如何使用点击事件在桌面上获得价值收音机?

时间:2014-11-18 11:25:58

标签: javascript jquery html5

我想使用点击事件获取表中的无线电值。注意,在列中获取无线电的值

<table id="div_table" width="500px" border="2px" cellpadding="2" cellspacing="2" >
<tr>
<td >Column Name1</td>
<td>Column Name2</td>
<td >Column Name3</td>
</tr>

<tr >
<td >PN1</td>
<td ><input type="radio" name="RD_CHECK" value="ABC">ABC</td>
<td ></td>
</tr>

<tr >
<td >PX2</td>
<td ><input type="radio" name="RD_CHECK" value="XYZ">XYZ <input type="radio" name="RD_CHECK" value="CBA">CBA</td>
<td ><input type="radio" name="RD_CHECK" value="123">123 <input type="radio" name="RD_CHECK" value="456">456</td>
</tr>
</table>

好的,示例:我检查了第2列的无线电但是不起作用。

 $(document).ready(function ()
        {
            $('body').on('click','#div_table tbody tr', function ()
            {
                if ($("input[type='radio']").is(':checked') == true && $(this).find('td:eq')==1)
                {
                    //value of radio in Column2
                    alert('This is Column 2 and value = '+$("input:checked").val());
                }
                else
                {
                  // value of radio in Column3
                    alert('This is Column 3 and value = '+$("input:checked").val());
                }
            });
   });

给我建议。谢谢。

1 个答案:

答案 0 :(得分:1)

  • $("input[type='radio']").is(':checked') == true只会获得第一个匹配checked的{​​{1}}属性。如果未选中您的第一台收音机,则会失败。
  • <input>永远都是如此,因为即使是没有匹配的jQuery构造函数也会返回一个对象(真值)。

相反,请将事件附加到单选按钮本身。您可以通过找到.index() $(this).find('td:eq') == 1的{​​{3}}来获取该列。要获得价值,只需使用您的活动的上下文:

<td>

.closest()