这是我的工作代码:
jQuery.ajax({
type: 'post',
url: ajaxurl,
dataType: 'json',
data: jQuery('select[name^="option"], :input[name^="option"]),
success: function (mydata) {
// do something
}
});
我想添加一个要传回的变量以及名为'myVar'的select和textbox选项值。但是当我添加它时,我没有在参数中看到它:
var myVar = '123';
jQuery.ajax({
type: 'post',
url: ajaxurl,
dataType: 'json',
data: jQuery('select[name^="option"], :input[name^="option"], myvar='+myVar),
success: function (mydata) {
// do something
}
});
我做错了吗?我是否需要序列化或编码URI组件?似乎没有什么影响它。我仍然得到选择和文本框数据,但myVar在$ _POST方面根本没有。
思想?
答案 0 :(得分:2)
你试过了吗?
var myVar = '123';
jQuery.ajax({
type: 'post',
url: ajaxurl,
dataType: 'json',
data: jQuery.param(jQuery('select[name^="option"]').val()) + jQuery.param(jQuery('input[name^="option"]').val()) + '&myvar=' + myVar,
success: function (mydata) {
// do something
}
});
我认为您也可以使用traditional: true
代替param