【问题标题】:jQuery: Checking for disabled attribute and adding/removing it?jQuery:检查禁用属性并添加/删除它?
【发布时间】:2013-02-01 13:23:37
【问题描述】:

我选择这样一个表单的所有输入元素:

var fields = $( form + " :input" ).not( "button" );

如何检查这些输入中的任何一个是否设置了disabled 属性并在存在时将其删除?

另外,我需要在删除 is 之后添加它(并序列化其间的字段),有没有一种优雅的方法? toggle 之类的东西,但对于属性?

【问题讨论】:

    标签: jquery forms serialization attributes


    【解决方案1】:

    假设您使用的是 jQuery 1.6 或更高版本,建议的方法是使用.prop()

    fields.prop("disabled", false);

    如果你需要对每一个都有逻辑,你可以做一些事情到

    var fields = $( form + " :input" ).not( "button" );
    fields.each(function(index, element) {
        var isDisabled = $(element).is(':disabled');
        if (isDisabled) {
            $(element).prop('disabled', false);
        } else {
            // Handle input is not disabled
        }
    });
    

    jsfiddle

    【讨论】:

      【解决方案2】:

      您可以使用disabled 选择器

      $('input:disabled').attr('disabled', '');
      

      here

      http://jsfiddle.net/JngR9/

      【讨论】:

        【解决方案3】:

        使用:disabled Selector` 试试这个

        $('input:disabled').remove();
        

        【讨论】:

          【解决方案4】:

          删除

          $('input:disabled').removeProp('disabled');
          

          $('input:disabled').prop('disabled', 'disabled');
          

          添加

          $('input:disabled').prop('disabled', 'disabled');
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2011-08-21
            • 1970-01-01
            • 2019-01-02
            • 2012-11-17
            • 2012-12-15
            • 2022-10-31
            • 2016-08-11
            • 2013-01-04
            相关资源
            最近更新 更多