这是AJAX处理的合法调用吗?
我选择$_GET
变量,但不是$_POST
。
' selected '是来自dataTable
选择的数据数组。
$.ajax({
url: './inc/MediaScripts.php?argument=deleteRecords',
type: 'POST',
data: selected
});
服务器端 print_r($GLOBALS);
[_GET] => Array ( [argument] => deleteRecords ) [_POST] => Array ( )
更新
编辑JQuery
$.ajax({ url: './inc/MediaScripts.php?argument=deleteRecords', type: 'POST', data: { "test1": "value1", "test2": "value2" } });
结果
[_GET] => Array ( [argument] => deleteRecords ) [_POST] => Array ( [test1] => value1 [test2] => value2 )
答案 0 :(得分:2)
data属性应该类似于这样的数据:{" selected&#34 ;: selected}
除此之外,如果网址是正确的,只需尝试这样的
$.ajax({
url: './inc/MediaScripts.php?argument=deleteRecords',
type: 'POST',
data: {"selected":selected}
}).done(function() {
alert('works');
});
亲眼看看:)
答案 1 :(得分:1)
我选择$_GET
变量,而不是$_POST
我认为你应该发布一个对象:
data: {selected : selected}
在服务器端,你可以选择:
$_POST['selected'] // it contains the array you posted.
总而言之,我建议你跟type:"post"
说话并传递像这样的变种:
$.ajax({
url: './inc/MediaScripts.php',
type: 'POST',
data: {argument:"deleteRecords", selected : selected}
});
答案 2 :(得分:0)
使用$ _GET可以访问URL queryString中传递的任何数据,即使您使用 POST 提交数据,但数据' ('选择'数组)只能在$ _POST变量中读取。