发送两个变量与AJAX(我有一个工作,但需要两个)
我使用下面的代码发送到PHP脚本,其中添加到MySQL数据库。 PHP代码工作正常,并设置为接收两个变量,但我不确定如何更改ajax代码以传递2个(或更多)变量而不是1到PHP脚本。 我点名传递“任务A”,并希望提前发送两个变量与AJAX(我有一个工作,但需要两个)
{ taskA : new_taskA }
是一个变量(一个对象)。但一个对象可以有多个键/值对:{ taskA: new_taskA , taskB : new_taskB}
仍然是一个您传递的对象,但包含更多内容。你可以按照你想要的方式传递尽可能多的数据:字符串,数字,对象等等。
服务器端,得到这个数据回用:
$taskA = $_POST['taskA'];
$taskB = $_POST['taskB'];
甚至一个通用的循环到你所有的POST变量转换为PHP变量:
foreach ($_POST as $var => $value) $$var = $value;
这将自动设置$taskA
, $taskB
,$taskWhatever
变量与相应的值。但是请注意安全,并且不要忘记清理内容。
非常感谢您的所有答复。所有的答案都大致相同,所以不得不选择一个来打勾。它正在工作!谢谢你的时间。 – Timblebop
加上“taskB”
function add_task() {
$('.add-new-task').submit(function(){
var new_taskA = $('.add-new-task select[name=new-taskA]').val();
if(new_taskA != ''){
$.post('add-task.php', { taskA: new_taskA }, function(data) {
$('.add-new-taskA select[name=new-taskA]').val('');
$(data).appendTo('.task-list ul').hide().fadeIn();
delete_task();
});
}
return false;
});
}
function delete_task() {
$('.delete-button').click(function(){
var current_element = $(this);
var id = $(this).attr('id');
$.post('delete-task.php', { task_id: id }, function() {
current_element.parent().fadeOut("fast", function() { $(this).remove(); });
});
});
}
非常感谢,您可以通过,
符号传递mulple价值
{任务A变量:new_taskA, taskB:new_taskB}
如何:
$.post('add-task.php', { taskA: new_taskA, taskB: new_taskB }, function(...
只需添加 '' 变量之间。 可以从jQuery API页面的底部找到: http://api.jquery.com/jquery.ajax/
即:
$.ajax({
method: "POST",
url: "some.php",
data: { name: "John", location: "Boston" }
})
'{任务A:new_taskA,taskB:new_taskB}' – Daan