T0ny lombardi
T0ny lombardi

Reputation: 1920

Populate textboxes via a series of checkboxes

I am trying to populate a series of textboxes from a number of checkboxes. There are 8 text boxes and it seems that code will only populate one of these fields.

here is the checkboxes:

<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" />

heres the textboxes:

<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" />

here is my 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]);
   }
 });

the result i'm getting is that it will give the value of one of the check boxes and put it in text box 3 or 4.

this is what console log is giving me :

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 

Upvotes: 0

Views: 230

Answers (2)

T0ny lombardi
T0ny lombardi

Reputation: 1920

I got the code to work. Took some good advice.

here's the code:

// 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]);   
  }); 
});

demo here

Upvotes: -1

Sergio
Sergio

Reputation: 28837

Try this:

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

Demo here

Note: in your code you have no class with name .naicscode, so I used class naicsCodeCheckbox instead. If you want to go by name you can use the same code but with $('input[name="naicscode"]').each( //etc ... instead.

Upvotes: 2

Related Questions