【问题标题】:jQuery: Hide or show table row based on radio button checkedjQuery:根据选中的单选按钮隐藏或显示表格行
【发布时间】:2012-02-09 12:39:47
【问题描述】:

无法采用此处找到的任何示例,因此我将其作为新问题发布。

我有几个表格行,一个带有单选按钮:

<tr id="catering-types">
    <td colspan="2">Catering Option</td>
    <td>
        <div class="catering-radio-option">
        <label><input type="radio" name="catering_type" id="pickup-only" value="pickup-only" checked="checked">
        Pickup Only</label>
        </div>
        <div class="catering-radio-option">
        <label><input type="radio" name="catering_type" id="delivered" value="delivered">Delivered</label>
        </div>
        <div class="catering-radio-option">
        <label><input type="radio" name="catering_type" id="fully-serviced" value="fully-serviced">Fully Serviced</label>
        </div>
    </td>
</tr>

根据用户在单选按钮中签入的内容,应隐藏或显示其下方的行。在本例中,只有在用户选择“已交付”单选按钮时才应显示下面的表格行,否则应隐藏。

谢谢

乔治

【问题讨论】:

标签: jquery


【解决方案1】:

为单选按钮添加一个点击处理程序。 如果选中,那么你可以去 $(this).closest('tr').next().hide();

最接近 是您需要的神奇功能。它向上搜索正确的选择器。

只需添加 onclick="$(this).closest('tr').next().hide();"作为单选按钮的属性。

这将隐藏 餐饮类型行之后的行。单击处理程序中的选择器当然必须针对其他类型进行更改。

【讨论】:

  • 感谢您的建议,您可以更新它并包含单选按钮单击处理程序部分吗?再次感谢。
  • 不确定内联 js 是否是个好主意。用.live( 'change' function() {} 试过这个,最近的 tr 没有用,但是定位 tr id 并使用hide() 有效。还是谢谢
猜你喜欢
  • 1970-01-01
  • 2018-01-01
  • 2021-09-02
  • 2016-03-15
  • 1970-01-01
  • 2017-02-24
  • 1970-01-01
  • 2018-02-27
  • 2013-01-20
相关资源
最近更新 更多