0

我正在尝试从多个复选框中填充一系列文本框。有 8 个文本框,似乎代码只会填充其中一个字段。

这是复选框:

<input name="naicscode" id="naicsCodeCheckbox0" class="naicsCodeCheckbox" type="checkbox" value="1" />
<input name="naicscode" id="naicsCodeCheckbox1" class="naicsCodeCheckbox" type="checkbox" value="1" />
<input name="naicscode" id="naicsCodeCheckbox2" class="naicsCodeCheckbox" type="checkbox" value="2" />
<input name="naicscode" id="naicsCodeCheckbox3" class="naicsCodeCheckbox" type="checkbox" value="3" />
<input name="naicscode" id="naicsCodeCheckbox4" class="naicsCodeCheckbox" type="checkbox" value="4" />
<input name="naicscode" id="naicsCodeCheckbox5" class="naicsCodeCheckbox" type="checkbox" value="2" />
<input name="naicscode" id="naicsCodeCheckbox6" class="naicsCodeCheckbox" type="checkbox" value="3" />
<input name="naicscode" id="naicsCodeCheckbox7" class="naicsCodeCheckbox" type="checkbox" value="4" />
<input type="button" id="secondaryNaicsButton" name="save_value" value="Save" />

继承人的文本框:

<input name="secondaryNaicsCodeField" id="secondaryNaicsCode0" class="fpp_textfield NAICS-code-field" value=""  type="text" />
<input name="secondaryNaicsCodeField" id="secondaryNaicsCode1" class="fpp_textfield NAICS-code-field" value=""  type="text" />
<input name="secondaryNaicsCodeField" id="secondaryNaicsCode2" class="fpp_textfield NAICS-code-field" value=""  type="text" />
<input name="secondaryNaicsCodeField" id="secondaryNaicsCode3" class="fpp_textfield NAICS-code-field" value=""  type="text" />
<input name="secondaryNaicsCodeField" id="secondaryNaicsCode4" class="fpp_textfield NAICS-code-field" value=""  type="text" />
<input name="secondaryNaicsCodeField" id="secondaryNaicsCode5" class="fpp_textfield NAICS-code-field" value=""  type="text" />

这是我的 jQuery:

 // gets values of check box in Secondary NAICS list
 $('#secondaryNaicsButton').click(function() {
   $('.naicsCodeCheckbox:checked').each(function(i){
   var val = [] 
   val[i] = $(this).val();
   for (var i =0; i < val.length; i++) {
     $('#secondaryNaicsCode'+i).val(val[i]);
   }
 });

我得到的结果是它将给出其中一个复选框的值并将其放在文本框 3 或 4 中。

这是控制台日志给我的:

111140                        fol_reg_form.js:215
undefined                     fol_reg_form.js:215
111150                        fol_reg_form.js:215
2
undefined                     fol_reg_form.js:215
111219                        fol_reg_form.js:215
3
undefined                     fol_reg_form.js:215
111331                        fol_reg_form.js:215
4
undefined                     fol_reg_form.js:215
111334 
4

2 回答 2

2

尝试这个:

$('#secondaryNaicsButton').click(function () {
    $('.naicsCodeCheckbox').each(function (i) {
        if (this.checked) {
            $('#secondaryNaicsCode' + i).val(this.value);
        }
    });
});

演示在这里

注意:在您的代码中,您没有带有 name 的类.naicscode,因此我使用了 class naicsCodeCheckbox。如果您想使用名称,您可以使用相同的代码,但可以使用$('input[name="naicscode"]').each( //etc ...

于 2013-10-15T15:09:57.193 回答
-1

我得到了工作的代码。接受了一些好的建议。

这是代码:

// gets values of check box in Secondary NAICS list
$('#secondaryNaicsButton').click(function() {
  $('.naicsCodeCheckbox:checked').each(function(e) {
    val = []
    val[e] = $(this).val();
    $('#secondaryNaicsCode'+e).val(val[e]);   
  }); 
});

演示在这里

于 2013-10-15T18:23:00.920 回答