Reputation: 497
I have a table with radio buttons, on the first column, options are:
On the second column, options are:
Now what I want to do is, when the user clicked 'No Stock' on the first column, the 'No Stock' radio option on the second column should be checked.
Here's what I'm doing:
HTML:
<table border='1'>
<tr>
<td class="valign_top" style="text-align:left;">
<div class="radio_field">
<input type="radio" class="stock_avail" id="93_stock_avail_0" name="93_stock_avail" value="0" checked=""> ---
</div>
<div class="radio_field">
<input type="radio" class="stock_avail" id="93_stock_avail_No" name="93_stock_avail" value="No"> No Stock
</div>
<div class="radio_field">
<input type="radio" class="stock_avail" id="93_stock_avail_Yes" name="93_stock_avail" value="Yes"> With Stock
</div>
</td>
<td class="sa_sw_td valign_top" style="text-align:left;">
<div class="radio_field">
<input type="radio" class="sa_sw" name="93_sa_sw" id="93_sa_sw_0" value="0" checked=""> ---
</div>
<div class="radio_field">
<input type="radio" class="sa_sw" name="93_sa_sw" id="93_sa_sw_1" value="1"> No Stock
</div>
<div class="radio_field">
<input type="radio" class="sa_sw" name="93_sa_sw" id="93_sa_sw_2" value="2"> Low
</div>
<div class="radio_field">
<input type="radio" class="sa_sw" name="93_sa_sw" id="93_sa_sw_3" value="3"> Medium
</div>
<div class="radio_field">
<input type="radio" class="sa_sw" name="93_sa_sw" id="93_sa_sw_4" value="4"> High
</div>
</td>
</tr>
<tr>
<td class="valign_top" style="text-align:left;">
<div class="radio_field">
<input type="radio" class="stock_avail" id="94_stock_avail_0" name="94_stock_avail" value="0" checked=""> ---
</div>
<div class="radio_field">
<input type="radio" class="stock_avail" id="94_stock_avail_No" name="94_stock_avail" value="No"> No Stock
</div>
<div class="radio_field">
<input type="radio" class="stock_avail" id="94_stock_avail_Yes" name="94_stock_avail" value="Yes"> With Stock
</div>
</td>
<td class="sa_sw_td valign_top" style="text-align:left;">
<div class="radio_field">
<input type="radio" class="sa_sw" name="94_sa_sw" id="94_sa_sw_0" value="0" checked=""> ---
</div>
<div class="radio_field">
<input type="radio" class="sa_sw" name="94_sa_sw" id="94_sa_sw_1" value="1"> No Stock
</div>
<div class="radio_field">
<input type="radio" class="sa_sw" name="94_sa_sw" id="94_sa_sw_2" value="2"> Low
</div>
<div class="radio_field">
<input type="radio" class="sa_sw" name="94_sa_sw" id="94_sa_sw_3" value="3"> Medium
</div>
<div class="radio_field">
<input type="radio" class="sa_sw" name="94_sa_sw" id="94_sa_sw_4" value="4"> High
</div>
</td>
</tr>
</table>
JavaScript:
$(document).ready(function(){
$('.stock_avail').click(function(){
var value = $(this).val();
console.log("value: " + value);
if(value=='No'){
$(this).next('td').find('radio').val(2);
}
});
});
This might help: http://jsfiddle.net/E6mhM/.
Any ideas how to do that? TIA!!!
Upvotes: 0
Views: 2192
Reputation: 7954
$(document).ready(function(){
$('.stock_avail').click(function(){
if($(this).val()=='No'){
$(this).parent().parent().next().find(':radio:eq(1)').attr('checked','checked');
//assuming No stock will be always a second radio option
}
});
});
Upvotes: 0
Reputation:
$(document).ready(function(){
$('.stock_avail').click(function(){
var value = $(this).val();
console.log("value: " + value);
if(value=='No'){
$(this).closest("td").next().find("input[value=1]").attr("checked",true);
}
});
});
Demo: http://jsfiddle.net/E6mhM/4/
Upvotes: 1