jQuery动态创建单选按钮和属性

时间:2012-07-27 17:21:51

标签: jquery

我正在使用smarty并创建一个动态html表,每个选项都有单选按钮。当我选择一个单选按钮时,我想要一个隐藏的行(带有注释文本区域),以显示我刚刚选择的那个单选按钮。 当我运行以下代码时,它将在每个单选按钮下方显示一行,而不是我刚刚选择的那一行:

Smarty单选按钮:

<tr>
  <td>
    <input 
       type="radio" 
       name="refund_selected" 
       id="refund_selected" 
       value="{smartydynamictag}" />
  </td>
</tr>

隐藏的评论行:

<tr id="refund_comments" style="display: none;">
  <th colspan="6">Test Here</th>
</tr>

我的jQuery:

$("input[name=refund_selected]").click(function() { 
    if ($("input[name=refund_selected]").attr('checked')) {
        $("tr#refund_comments").show(); 
    }
});

2 个答案:

答案 0 :(得分:1)

我在这里做了一个有根据的猜测,关于你的标记是如何组织的,但可以工作:

$("input[name=refund_selected]").click(function() { 
        if ($("input[name=refund_selected]").attr('checked')) {
            $(this).parent().parent().next('#refund_comments').show(); 
        }
});

另外,你有多个相同的ID吗?因为上述代码修改甚至不需要;你不能复制ID。

答案 1 :(得分:0)

尝试引用此项,因为您只想检查刚检查过的电台

$("input[name=refund_selected]").click(function() { 
  if ($(this).is(':checked')) {
    $("tr#refund_comments").show(); 
  }});
});