mardi 8 août 2017

How to retrieve references from group Checkbox name arrays using JS or jQuery

I have a hard JS/jQuery riddle ! Hard because I couldn't find it on Google nor here, neither now, nor months ago when I was looking for it previously.

A large framework is using checkboxes in a table:

<table class="ListTable">
  <tr>
    <td><input name="blnChecked[70_20]" type="checkbox" value="1" id="some_unusable_gobbledy_gook" /></td>
    <td></td>...
  </tr>
  <tr>
    <td><input name="blnChecked[71_20]" type="checkbox" value="1" id="some_more_unusable_gobbledy_gook" /></td>
    <td></td>...
  </tr>
  <tr>
    <td><input name="blnChecked[70_25]" type="checkbox" value="1" id="some_further_unusable_gobbledy_gook" /></td>
    <td></td>...
  </tr>
</table>

I now need to collect all checkbox name references into an array: 70_20, 71_20 and 70_25 in the above example. Then join them up, and submit them as a URL parameter to a different page (although this joining is not essential to my question).

Question: How do I get these references in an array from the name strings in these (checked) checkboxes ?

I prefer not to use regexes (a bit messy, or 'overkill' for such a seeming trivial matter imho), although such a solution is not off my table.

If someone asks why the table is structured as such: This is not my doing. But I can see that when such a form, in which this table is submitted to a PHP page, the PHP stores all such checkboxes into a single array:

array(3) {
  [0]=>
  string(6) "70_20"
  [1]=>
  string(4) "71_20"
  [2]=>
  string(5) "70_25"
}

...which is very nice, and I wanted to achieve a similar effect with JS (and jQuery).




Aucun commentaire:

Enregistrer un commentaire