Javascript 迭代输入并将数据传递给AJAX函数
我正在循环几个输入,并试图将数据附加到一个对象中,然后将其传递到AJAX函数中。我不太确定我做错了什么,但我一直收到一个错误,上面写着Javascript 迭代输入并将数据传递给AJAX函数,javascript,Javascript,我正在循环几个输入,并试图将数据附加到一个对象中,然后将其传递到AJAX函数中。我不太确定我做错了什么,但我一直收到一个错误,上面写着“Uncaught SyntaxError:Unexpected token)”,我找不到这个额外的括号,我想我一定是做错了 var dataObject = []; $("#"buttonId).find("input").each(function(index) { inputId = $(this).attr("id").replace(butt
“Uncaught SyntaxError:Unexpected token)”
,我找不到这个额外的括号,我想我一定是做错了
var dataObject = [];
$("#"buttonId).find("input").each(function(index) {
inputId = $(this).attr("id").replace(buttonId, "");
inputValue = $(this).val();
var data = {
inputId : inputValue;
}
dataObject.push(data);
});
$.post(
'ajax/' + buttonId + '.php',
{
dataObject: dataObject
},
function (response) {
}
);
字符串连接缺少
+
$("#"buttonId)
// ^----
此外,不能将变量用作对象文字中的属性名称,请尝试以下操作:
var data = {};
data[inputId] = inputValue;
dataObject.push(data);
您也可以使用map
方法:
var dataObject = $("#" + buttonId).find("input").map(function() {
var inputId = this.id.replace(buttonId, ""),
obj = {};
obj[inputId] = this.value;
return obj;
}).get();
或方法。是的,这似乎有效!在继续确保使用最合适的方法之前,我将先查看map方法和.serializeArray()方法。非常感谢你的帮助,告诉我我做错了什么。