19

.prop("disabled", false) 有问题,它在 Opera 和 firefox 中运行良好,但 IE 和 chrome 我无法让它工作..

实际上这是一个邀请表格,我制作了这样的发送按钮

<input id="sendInvite" class="mail_send" disabled="disabled" type="button" name="invite" value="Send">

这是CSS

.mail_send[disabled="disabled"] {background-color:#343434; color:#747474}

所以你可以看到按钮被禁用并且你不能点击,你必须先写下你的名字和邮件,然后再删除禁用按钮,你就可以发送邮件了。对于这个我在这里写代码是: http: //pastebin.com/8u23G90b

但是这里出了点问题,在 chrome 和 IE 中禁用从未从按钮中删除,我也加载 jquery 1.7.1

ps对不起我的英语

4

5 回答 5

23

删除属性:

$('button').removeAttr("disabled");

有关详细信息,请参阅.removeAttr()

于 2012-02-11T13:27:58.163 回答
2

您的问题不在于 JQuery,而在于您的 CSS 选择器。disabled属性指的是页面首次加载时的默认值,而不是元素是否实际被禁用。

您想要的 CSS 选择器是:disabled 选择器

.mail_send:disabled {background-color:#343434; color:#747474}

你可以看到这个 jsfiddle的例子。

于 2013-07-24T22:52:13.123 回答
0

我遇到了类似的问题,我使用 .prop("disabled", false) 从“保存”按钮中删除禁用。Disabled 是通过 .prop("disabled", true) 分配的。

但是等一下谁 - 当试图删除这个属性(它会在 html 标记中被呈现为禁用)时,我发现它被输出为 class="disabled"!

为此-我使用了 .removeClass('disabled') 我想说的是,如果事情没有按照您认为的方式进行,请确保它们的初始输出是您所期望的。


于 2014-12-05T00:28:28.187 回答
-1

试着这样写:

$('myButton').prop("disabled", "");
于 2012-02-11T13:11:42.160 回答
-1

只需使用按钮并直播:

<button class="sendm">Send Email</button>

$(".sendm").live("click", function(e){
   var field1 = $("").val();
   var field2 = $("").val();

   if(field1 === "" || field2 === "" ){
    /// fake checker, you make this more robust etc
     return false;  // maybe do an alert here
   } else {
      //post form data and get json response
   }

});

 $(document).ready(function(){ $(".sendm").button(); });
于 2012-02-11T13:14:20.127 回答