2012-06-30 27 views
1

我的jsfiddle是這裏 - http://jsfiddle.net/hhimanshu/HVRLA/jQuery的:按鈕使工作不

極品
- 一旦文本進入「創建」按鈕應使
- 如果沒有文本(文本長度= 0),「創建」按鈕應該被再次禁用

UPDATE

所提出的解決方案適用於解決方案,但它不」 t與我在下拉菜單中工作。這裏是小提琴 - http://jsfiddle.net/hhimanshu/ukYek/

+0

只是一個旁註:'$(輸入)'是沒有必要的,可以直接做'input.keyup(...)' – Cranio

+0

冷靜,我會記得,謝謝@Cranio – daydreamer

+1

而且,小提琴是錯誤的,沒有「新名單」,而是「新播放列表」。至於前者,你有'var input = $(「something」);',所以'input'已經是一個JQuery對象,因此可以使用它。 – Cranio

回答

3

它看起來像你沒有正確選擇按鈕,並且你忘了把else再次禁用,如果輸入中沒有字符(即用戶退格所有的他們輸入的文字)。這工作:

$(function(){ 
    var input = $('#new-list :input'); 
    $(input).keyup(function(){ 
     //alert($(input).val().length);     
     if ($(input).val().length > 0) { 
      //alert($(input).val().length); 
      $('#new-list button[type="submit"]').removeAttr('disabled'); 
     } 
     else { 
      $('#new-list button[type="submit"]').attr('disabled',true); 
     } 
    }); 
}); 

的jsfiddle:http://jsfiddle.net/HVRLA/2/

+0

感謝@Nathan,但這不工作在http://jsfiddle.net/hhimanshu/ukYek/小提琴,Ia m擰在某處似乎 – daydreamer

+0

沒有人,問題是一個錯誤的選擇器(#新列表)。 – Cranio

+1

爲什麼downvote?僅僅因爲我的回答不適用於最初沒有發佈的其他標記,並不意味着它需要一個downvote。它可以與jsfiddle中的原始標記和代碼一起工作,因此它不會**需要downvote。 – Nathan

0

另一種解決方案:http://jsfiddle.net/HVRLA/5/

編輯:

正如下面這http://jsfiddle.net/hhimanshu/ukYek/撥弄你的評論是不工作。 你必須在輸入選擇一個問題:

$(function(){ 
    var input = $('#new-playlist :input'); 
    $(input).live('keyup',function(){ 
     //alert($(input).val().length);     
     if ($(input).val().length > 0) { 
      //alert($(input).val().length); 
      $('#create-playlist-button').removeAttr('disabled'); 
     } 
     else { 
      $('#create-playlist-button').attr('disabled',true); 
     } 
    }); 
});​ 

我認爲這是在你的代碼的問題 - 作爲自己沒new-list ID在你的HTML

var input = $('#new-list :input'); 

所以我只是把它改成這樣:

var input = $('#new-playlist :input'); 

這裏是小提琴鏈接:http://jsfiddle.net/ukYek/3/

+0

感謝@Mohammad,它似乎並不工作http://jsfiddle.net/hhimanshu/ukYek/,我缺少的東西 – daydreamer

+0

@daydreamer請參閱編輯。 –

0

工作的示例:

$(function(){ 
    var input = $('#new-playlist :input'); 
    input.live('keyup',function(){ 
      $('#create-playlist-button').attr('disabled',input.val().length==0); 
    }); 
});​ 
+0

@daydreamer看看這個更簡潔的形式,也許你會喜歡它:) – Cranio

+0

input.val()是未定義的是我看到的。雖然我喜歡緊湊版本 – daydreamer

+0

奇怪的是,我沒有得到任何錯誤:請參見 Cranio