我可以在jquery中使用这样的按钮来禁用按钮吗?

时间:2010-06-24 16:37:27

标签: jquery

$(this).closest("fieldset").find("input:not(:checkbox), select,textarea").attr('disabled', this.checked);  

用这个我可以禁用输入,选择,textarea如何处理按钮?

感谢

3 个答案:

答案 0 :(得分:2)

您的代码适合我:

尝试一下: http://jsfiddle.net/JzKdx/2/ (已更新)

你有一些具体问题吗?

HTML (已更新以包含提交按钮)

<fieldset>

    <input type='checkbox' /> Click me
    <br><br>
    <input type='text' />
    <select>
        <option>one</option>
    </select>
    <textarea>
        sometext
    </textarea>

    <input type='submit' />

</fieldset>

的jQuery

$(':checkbox').change(function() {
    $(this).closest("fieldset")
        .find("input:not(:checkbox), select,textarea")
        .attr('disabled', this.checked);  
    });​

答案 1 :(得分:1)

不完全 - 只要存在disabled属性,控件就会被禁用。要重新启用该控件,您必须删除disabled属性。像这样:

var element = $(this).closest("fieldset").find("input:not(:checkbox), select,textarea");
if (this.checked) {
  element.attr('disabled', 'disabled');
} else {
  element.removeAttr('disabled');
}

答案 2 :(得分:0)

试试此代码

$(this).closest("fieldset").find("input:not(:checkbox), select,textarea,button").attr('disabled', this.checked);