根据输入值隐藏jquery

时间:2014-09-23 14:04:24

标签: javascript jquery html-table

如果td inputvalue,我想隐藏0,但我无法让它发挥作用?

http://jsfiddle.net/zxpsd8x6/1/

<td><input type="radio" name="hideifvalue0" value"0"></td>
<td><input type="radio" name="hideifvalue0" value"1"></td>

<button class="btn1">Hide</button>
<button class="btn2">Show</button>
<script>
 $(document).ready(function(){
 $(".btn1").click(function(){
 $("td").hide();
 });
 $(".btn2").click(function(){
 $("td").show();
 });
});
</script>

3 个答案:

答案 0 :(得分:1)

不是我推荐的方式,但这修复了选择器:

JSFiddle:http://jsfiddle.net/swcmp2ws/

$(document).ready(function () {
    $(".btn1").click(function () {
        $('td:has(input[value="0"])').hide();
               //or
        $('input[value="0"]').parent().hide();
    });
    $(".btn2").click(function () {
        $('td:has(input[value="0"])').show();
               //or
        $('input[value="0"]').parent().show();
    });
});

备注:

  • 您的HTML无效 - 添加了tabletr元素
  • 您应该只使用公共元素上的类来实现更简单的选择器(例如class="hidethese")和$('.hidethese').hide()

答案 1 :(得分:0)

将您的HTML更改为:

<td><input type="radio" name="hideifvalue0" value="0"></td>
<td><input type="radio" name="hideifvalue0" value="1"></td>

然后你的jQuery应该是:

 $(document).ready(function(){
   $(".btn1").click(function(){
     $("input[value='0']").parent().hide();
   });
   $(".btn2").click(function(){
     $("input[value='0']").parent().show();
   });
});

答案 2 :(得分:0)

首先你的html元素是错误的。 <td>应位于<table><tr>内 喜欢: <table> <tr> <td><input type="radio" name="hideifvalue0" value="0" /></td> <td><input type="radio" name="hideifvalue0" value="1" /></td> </tr> </table>

<button class="btn1">Hide</button> <button class="btn2">Show</button>

然后在这里你的jQuery代码:

$(".btn1").on('click', function () { $("input:radio[value='0']").parent().hide(); });

$(".btn2").on('click', function () { $("input:radio[value='0']").parent().show(); });