如何使用html元素的属性动态创建json对象

时间:2019-04-12 13:34:02

标签: javascript jquery jquery-ui

我想完全使用共享同一类的HTML元素的属性来创建JSON对象,这样关键就是数据属性,而值就是id。

我尝试了以下代码:

$("#searchBtn").click(function() {
  var map = [];
  $(".searchTextField").each(function() {
    var fieldName = $(this).attr('data-field-name')
    map.push({
      $(this).attr('data-field-name'): $(this).val()
    })
    alert(map);
  });
})

我想实现的目标是

{
  "id" : 1,
  "page" : 5
} 

但是ID和页面必须是动态的,即文本ID是从HTML元素的进贡中获取的

2 个答案:

答案 0 :(得分:2)

$("#searchBtn").click(function () {
    var map = [];

    $(".searchTextField").each(function() {
        var element = {}; 

        element.id = $(this).data('field-name');
        element.page = $(this).val();

        map.push(element);
    });

    alert(map);
});

答案 1 :(得分:0)

var dd = {};
dd.test = 5;

var dd = {};
dd['test'] = 5;