I have a form:
<form name="test">
<input type="radio" required="required" name="a" value="1">1
<input type="radio" required="required" name="a" value="X">X
<input type="radio" required="required" name="a" value="2">2
<br />
<input type="radio" required="required" name="b" value="1">1
<input type="radio" required="required" name="b" value="2">2
</form>
This is my goal:
If a=1 then b=1
If a=X then unset b
If a=2 then b=2
This is how I achieve it atm:
$('input[name="a"]').on('change', function() {
var selected = $('input[name="a"]:checked').val();
if (selected == "X") {
$('input[name="b"]:checked').prop("checked", false);
return false;
}
$('input[name="b"][value="' + selected + '"]').prop("checked", true);
});
The question is: what if there are multiple input "pairs" in my form and the name is dynamically set like this:
<form name="test">
<?php
foreach($arr as $item) {
$input = '
<input type="radio" required="required" name="'$item['id'].'a" value="1">1
<input type="radio" required="required" name="'$item['id'].'a" value="X">X
<input type="radio" required="required" name="'$item['id'].'a" value="2">2
<br />
<input type="radio" required="required" name="'$item['id'].'b" value="1">1
<input type="radio" required="required" name="'$item['id'].'b" value="2">2
';
echo($input);
}
?>
</form>
How can I apply the same javascript to handle all of them?