我知道如何使用一个表单数据使用ajax:
$.ajax({
type:'get',
url:'blabla.php',
data:$('#abc').serialize();
.........
但如果我想输入:
$('#exportmod').click(function(){
$.ajax({
"dataType":'json',
"type":'GET',
"url":'shows_merchan.php',
"data": [ action:"searchmodelqp",
jhead:"aaData",
month:$("#search_month").val(),
year:$("#search_year").val(),
export:"excel"
],
"success":function(json){
fnCallback(json);
}
});
});
你可以告诉我这个ajax的正确类型吗?
答案 0 :(得分:1)
你几乎拥有它,只是data
上的支撑是错误的,对于一个对象应该是{}
而不是[]
,如下所示:
$('#exportmod').click(function(){
$.ajax({
dataType: 'json',
type: 'GET',
url: 'shows_merchan.php',
data: { action: "searchmodelqp",
jhead: "aaData",
month: $("#search_month").val(),
year: $("#search_year").val(),
export: "excel"
},
success: fnCallback
});
});
上面的其他更改显示了可以做的事情。您不必为未保留的单词引用标识符(只要它们的有效...以及所有$.ajax()
选项都是),也不需要匿名包装来调用函数相同的签名,所以我更改了success
以直接使用您的回调。
以上$.ajax()
来电还有一个快捷方式,$.getJSON()
:
$('#exportmod').click(function(){
$.getJSON('shows_merchan.php',
{ action: "searchmodelqp",
jhead: "aaData",
month: $("#search_month").val(),
year: $("#search_year").val(),
export: "excel" },
fnCallback);
});