2011-09-10 58 views
1

這個工作在1.5.2,但不在1.6.2上。該按鈕不會被啓用。我認爲它必須與.attr函數不能在jQuery 1.6.x上工作(但在1.5.x上工作)

我該如何解決這個問題?

function checkMessageForm() { 
    var message_chars = $("#form_dm_text").val().length; 
    console.log(message_chars); 
    if (message_chars > 0 && message_chars < 14001) $("#form_dm_submit").attr("disabled", ""); 
    else 
    $("#form_dm_submit").attr("disabled", "disabled"); 
} 

謝謝!

回答

4

,應該刪除disabled屬性:

$("#form_dm_submit").removeAttr("disabled"); 

你可以看到removeAttr('disabled')效果與attr('disabled', '')這裏:

而不是 .attr("disabled", "")

http://jsfiddle.net/ambiguous/JMvKr/

+0

太棒了!謝謝!! – Santiago

2

,嘗試.removeAttr("disabled")

+0

也謝謝你qingbo! – Santiago

+0

oops - 我的回答是一個愚蠢的:) – qingbo

0

我喜歡使用.prop(propertyName, value)解決方案。大多數情況下,這只是另一個沒有在這裏提到的選項。

function checkMessageForm() { 
    var message_chars = $("#form_dm_text").val().length; 
    console.log(message_chars); 
    var disable = message_chars > 0 && message_chars < 14001; 
    $("#form_dm_submit").prop("disabled", disable); 
} 

attr()也接受true和false作爲啓用/禁用的值。

相關問題