Javascript 如何从输入id创建名称为的对象属性?

Javascript 如何从输入id创建名称为的对象属性?,javascript,jquery,Javascript,Jquery,但是每次我在{this.id:附近遇到错误时,如果只调用this.id或this.value或相同的jQuery-结果返回。在您的情况下,您应该使用定义的空对象: jQuery('[name="page-numbers[]"]').map(function () { return { jQuery(this).attr('id'): jQuery(this).val()}; }).get(); jQuery('[name="page-numbers[]"]').map(function ()

但是每次我在
{this.id:
附近遇到错误时,如果只调用
this.id
this.value
或相同的jQuery-结果返回。

在您的情况下,您应该使用定义的空对象:

jQuery('[name="page-numbers[]"]').map(function () {
  return { jQuery(this).attr('id'): jQuery(this).val()};
}).get();
jQuery('[name="page-numbers[]"]').map(function () {
  return {this.id: this.value};
}).get();

在您的情况下,您应该为定义的空对象使用:

jQuery('[name="page-numbers[]"]').map(function () {
  return { jQuery(this).attr('id'): jQuery(this).val()};
}).get();
jQuery('[name="page-numbers[]"]').map(function () {
  return {this.id: this.value};
}).get();

如果您想创建某种类型的“input\u id”:“input\u value”键值assoc,我认为您使用了错误的方法。请尝试以下方法:

$('[name="page-numbers[]"]').map(function() {
    var obj = {};
    obj[this.id] = this.value;
    return obj;
}).get();

使用.map,您将得到一个包含多个单键/值映射的数组。

如果您想创建某种类型的“输入id”:“输入值”键值关联,您使用的方法是错误的,我想说。请尝试以下方法:

$('[name="page-numbers[]"]').map(function() {
    var obj = {};
    obj[this.id] = this.value;
    return obj;
}).get();

使用.map,您将得到一个由多个一键/值映射组成的数组。

您到底想要返回什么?我感觉您想要一个id值映射到输入值({“name”:“Bong”,“use”:“puffing”}),而您得到的是一个映射数组([{“name”:“Bong”,“use”:“puffing”])。这真的是你想要的吗?你到底想要返回什么?我感觉你想要一个id值映射到输入值({“name”:“Bong”,“use”:“puffing”}),而你得到的是一个映射数组([{“name”:“Bong”,“use”:“puffing”]))。这真的是你想要的吗?是的,你是对的。也许你可以更正我的代码页编号:function(){var assocs={};jQuery('[name=“page numbers[]”“])。each(function(){assocs[this.id]=this.value;});console.log(assocs);return assocs;}它到底没有做什么?你能给我一个JSFIDLE示例,这样我们就可以用一个实例来测试它吗?是的,你是对的。也许你可以纠正我的代码页编号:function(){var assocs={};jQuery('[name=“page number[]]”)。each(function(){assocs[this.id]=this.value;});console.log(assocs);return assocs;}它到底没有做什么?您能给我一个JSFIDLE示例吗,这样我们就可以用一个实例来测试它了?