为从JSON对象派生的多个输入ID设置变量

时间:2016-04-06 02:59:00

标签: javascript jquery arrays json input

在下面,用户单击链接,该链接调用PHP脚本并返回一个JSON对象,通过该对象我解析并创建INPUT字段,每个字段都有自己的ID,这是JSON对象的一部分:

 $(function()
 {
   $('.addNewLink').click(function(e)
   {
     e.preventDefault();
     $('#addNewForm input, #addNewForm select').val('');
     $.post('api/size_types.php', function(data)
     {
       var obj = JSON.parse(data);
       $('.size_types').empty(); 
       var htmlToInsert = obj.map(function (item)
       {
         return '<div class="input-group">
                 <span class="input-group-addon" >'+item.SIZE_TYPE+'</span>
                 <input type="text" class="form-control size_types"
                 id="'+item.SIZE_TYPE+'" value="'+item.DEFAULT_TEU+'" />
                 </div>';
        });
        $('.size_types').html(htmlToInsert);
      });
      $('#addNewModal').modal('show');
    });
  });

在上面的代码中,我能够使用item.SIZE_TYPE遍历JSON并使用自己的ID创建所有INPUT字段,并将值设置为item.DEFAULT_TEU

在HTML方面,有一个表单,但希望我不必显示该代码。只需知道有一个名为#addNewSubmit的ID提交按钮,我将直接在下方显示JavaScript:

 $('#addNewSubmit').click(function()
 {
   var addservice = $('#addservice').val();  // user entered field
   // here is where I'm stuck
 });

我需要做的是使用JSON对象自动创建的INPUT字段创建变量。在我目前的情况下,已经生成了58个INPUT字段,所有字段都有自己的ID和DEFAULT_VALUE。用户可以选择更改DEFAULT_VALUE。

搜索网页后,我找到了这段代码并将其添加到正上方的点击事件中,位于第一个变量的正下方:

 var size_types=new Array();
 var j=0;
 $(".size_types").each(function(){  // looking at the class, I need the ID
   size_types[j]=$(this).val();
   j++;
 });

使用这个,我可以在ALERT框中返回每个INPUT字段的值,但是我需要ID,所以我可以将它们全部发送到PHP脚本以插入数据库。

如何获取每个ID及其值并将它们全部设置为自己的变量?或者,还有另一种方法吗?

0 个答案:

没有答案