jQuery的显示/隐藏场

我有让我的文本字段正确显示/隐藏的问题。 这里是例子:

JFiddle例

我要的是当选择的值等于1,被隐藏的一切文本字段只显示。 该复选框,部分工作正常。

代码的jsfiddle复制:

<html> <script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> <title>Test Page</title> <body> <table id="testList"> <tbody> <tr> <td><input type='checkbox'></td> <td><select> <option value="0">Volvo</option> <option value="1">Saab</option> <option value="2">Mercedes</option> <option value="3">Audi</option><input type='text' style="display: none"> </select> </td> </tr> <tr> <td><input type='checkbox'></td> <td><select> <option value="0">Volvo</option> <option value="1">Saab</option> <option value="2">Mercedes</option> <option value="3">Audi</option> </select><input type='text' style="display: none"> </td> </tr> <tr> <td><input type='checkbox'></td> <td><select> <option value="0">Volvo</option> <option value="1">Saab</option> <option value="2">Mercedes</option> <option value="3">Audi</option> </select> <input type='text' style="display: none"> </td> </tr> </tbody> </table> <script> jQuery(function($) { $("select").change(function() { var $this = $(this), $checkbox = $this.parent().prev().find(":checkbox"); if ($this.val() != 0) { $checkbox.attr("disabled", true); if($this.val() == 1){ $(":text").show(); } else{ $(":text").hide(); } } else { $checkbox.removeAttr("disabled"); } }); $(":checkbox").change(function() { var $this = $(this), $select = $this.parent().next().find("select"); if ($this.is(":checked")) { $select.attr("disabled", true); } else { $select.removeAttr("disabled"); } }); }); </script> </body> </html>

--------------解决方案-------------

http://jsfiddle.net/vsYB8/20/

而不是使用$(':text').show()你需要$(this).siblings(':text').show()

这将选择相应的文本框,而不是全部。

分类:jQuery的 时间:2012-04-24 人气:0
本文关键词: jQuery的,动画,文本框
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.512 (s). 10 q(s)