【问题标题】:Enable button in JQuery dialogJQuery 对话框中的启用按钮
【发布时间】:2011-06-16 16:25:42
【问题描述】:

我可以用这个很好地禁用它:

button.attr('disabled', 'disabled' ).addClass( 'ui-state-disabled' );

但是我该如何重新启用它呢?当我使用这个时:

button.attr('enabled', 'enabled' ).addClass( 'ui-state-enabled' );

它不起作用。

【问题讨论】:

  • 没有名为“启用”的属性。

标签: jquery


【解决方案1】:
button.removeAttr('disabled').removeClass( 'ui-state-disabled' );

【讨论】:

  • 有没有办法在不移除悬停功能的情况下禁用按钮?
【解决方案2】:

使用 jquery,您可以使用 removeAttr 和 removeClass 来摆脱您禁用的属性/类:

button.removeAttr('disabled').removeClass('ui-state-disabled');

【讨论】:

    【解决方案3】:

    只需删除 disabled 属性即可。

    http://api.jquery.com/removeAttr/

    button.removeAttr("disabled")
    

    【讨论】:

      【解决方案4】:

      我认为这就是您要寻找的:

      button.removeAttr("disabled");
      

      【讨论】:

        【解决方案5】:

        在这里尝试了所有答案,但对我来说没有任何效果

        问题是我有 html:

        <input type="submit" value="Save" id="saveButton" disabled="disabled" />
        

        然后我调用全局:

        $("button, input:submit, input:button").button();
        

        之后按钮获得属性 aria-disabled=true。

        以下都不会启用提交

        $("#saveButton").attr('disabled',false);
        $("#saveButton").removeAttr('disabled');
        $("#saveButton").prop('disabled',false);
        $("#saveButton").attr('aria-disabled',false);
        $("#saveButton").removeClass('ui-state-disabled' );
        

        在这种情况下,唯一可行的解决方案是:

        $("#saveButton").button( "enable" );
        

        jQuery UI 文档:Button Widget - enable()

        再次禁用按钮:

        $("#saveButton").button( "disable" );
        

        jQuery UI 文档:Button Widget - disable()

        【讨论】:

        • 提示: 禁用类似,参见linked answer.
        • 这是正确答案。这样,您实际上是在告诉 jQuery 启用按钮并让它完成所有工作。如果你想自己做这项工作,你必须删除disabled 属性、jQuery UI 禁用类,设置悬停类。无需手动完成所有这些操作。
        猜你喜欢
        • 1970-01-01
        • 2013-08-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多