大家好我尝试使用AJAX调用传递表单数据和附加变量,如下所示:
function tempFunction(obj) {
var data = $('form').serializeArray();
data.push(
{
no: $(obj).attr('id')
}
);
$.ajax({
type: "POST",
url: "/tempproject/main/changepage",
data: data,
success: function (msg) {
alert(msg);
}
});
}
然而在PHP中,当我尝试回拨“不”的时候。变量我收到一个错误说未定义的索引。 在我的php文件中我正在尝试:
$test = $_POST['no'];
echo $test;
点击时我会收到一个显示未定义索引号的弹出窗口
答案 0 :(得分:2)
数组的每个元素都是一个具有name和value属性的对象:
试试这样:
data.push({name: 'no', value: $(obj).attr('id')});
答案 1 :(得分:1)
数据应该在ajax
中像这样在{}
内传递
$.ajax({
type: "POST",
url: "/tempproject/main/changepage",
data: "{no: " + $(obj).attr('id') + "}",
success: function (msg) {
alert(msg);
}
});
答案 2 :(得分:0)
这将保留您的表单值
function tempFunction(obj) {
var data = $('form').serialize();
data += '&no='.$(obj).attr('id');
$.ajax({
type: "POST",
url: "/tempproject/main/changepage",
data: data,
success: function (msg) {
alert(msg);
}
});
}