Javascript 为jQuery post构造post数据

Javascript 为jQuery post构造post数据,javascript,jquery,post,Javascript,Jquery,Post,如何为jQuery帖子构造帖子数据?这是行不通的 var postData = ""; var postInputs = document.querySelectorAll("[id^='itemInput']"); for (var i = 0; i < postInputs .length; i++) { var itemName = postInputs [i].name; var itemValue = postInputs

如何为jQuery帖子构造帖子数据?这是行不通的

var postData = "";
var postInputs = document.querySelectorAll("[id^='itemInput']");
for (var i = 0; i < postInputs .length; i++) {
    var itemName = postInputs [i].name;
    var itemValue = postInputs [i].value ;
    postData += itemName + ": '" + itemValue  + "', ";
 }
 postData += "upload: 'Y'";

$.post("addNewItem.php", {postData}, 
    function(data, status) {
    }
);
var postData=”“;
var postInputs=document.querySelectorAll(“[id^='itemInput']”);
对于(变量i=0;i
如果你投了反对票,请解释原因

更新

这个问题已经结束了,有人向我指出了其他选择。然而,我发现以下是有效的。post数据必须是javascript对象

let postData = {}; //Create the object
item['upload'] = 'Y'; //Adding to the object ['key'] and the 'value'
var postInputs = document.querySelectorAll("[id^='itemInput']");
for (var i = 0; i < postInputs .length; i++) {
    item[postInputs[i].name] = postInputs[i].value;
}
$.post("addNewItem.php", item, 
    function(data, status) {
        }
);
let postData={}//创建对象
项目['upload']='Y'//添加到对象['key']和'value'
var postInputs=document.querySelectorAll(“[id^='itemInput']”);
对于(变量i=0;i
jQuery接受一个普通对象作为数据参数:

var postData = {
  itemid: '1',
  itemName: 'Foo'
};

$.post("addNewItem.php", postData, function(data, status) {

});

那根绳子是什么?它不是任何标准格式。首先,你为什么要用这种格式保存数据?@Quentin这就是一个例子。实际的代码通过按id迭代许多元素来生成更长的post数据字符串。为了便于人们阅读问题,我这样编写了它。你建议采用什么形式?这是一个有代表性的例子吗?你为什么使用非标准格式?我不是特别建议任何格式,我是问你为什么要用那种格式。@Quentin我还是不清楚你的意思。请原谅我的无知,但你建议什么样的形式?我不是建议任何特别的。我是这么说的。我在试图理解你提出的问题,以这种格式提供数据。你说过从元素中获取数据。我们可以忽略您在示例中使用的字符串格式吗?如果是,您从哪种元素获取数据?它们是表单中的输入吗?请不要问我为什么,但出于某种原因,jQuery将其称为PlainObject而不是PlainObject:。我也尝试过这一点。可悲的是,没有快乐。谢谢你的帮助,这说明你为我指明了正确的方向。需要设置为一个元素:非常感谢。