仅在一个表单输入上使用jQuery serializeArray

时间:2016-05-18 15:42:44

标签: jquery json ajax

我有一个非常标准的表单,除了可以克隆的一组输入。表单可以是viewed here

表格数据需要按原样提交:

  • q2_fullName [first]:first(标准表单字段)
  • q1_currentCommission1:[{ “仪器”: “INS1”, “委员会”: “4”, “边距”: “ins1marg”},{ “仪器”: “INS2”, “委员会”: “5”,”边距“:”ins2marg“}](克隆表单字段作为对象)

这是我正在尝试使用的提交处理程序:

$.ajax({
                type:$('form[name="form_60065580423955"]').attr('method'),
                url: form.action,
                data: ???,
                // this is where I need to serialize all the normal form fields and serializArray the cloned form fields
                beforeSend: function(data){
                  console.log('before send');
                },
                success: function(data){
                  console.log('success');
                }
              });

我不知道如何提交表单以便只有一个输入,克隆的输入作为json对象提交。

1 个答案:

答案 0 :(得分:0)

而不是jQuery.serializeArray,我认为在你的情况下form2js最适合:这个库可以从表单输入中输出一个json对象,只要你相应地命名输入。

例如,您应该为输入字段使用name属性:

    仪器输入字段
  • q1_currentCommission1[x].Instruments
  • q1_currentCommission1[x].Commissions用于佣金输入字段
  • q1_currentCommission1[x].Margins表示保证金输入字段

而不是[x]使用[0],1,2等等。将form2js应用于此表单将导致您描述的JSON结构。