2014-02-11 42 views
1

現在有一個用戶輸入單詞的輸入文本框。一旦他們輸入該單詞並按下回車鍵,該單詞就會消失,並出現一個新單詞,依此類推。如果他們輸入錯誤,顏色會變成紅色。我只能讓它工作一次,因爲我的嵌套if語句有問題。如何讓我的嵌套if語句在jQuery中工作

$(".inputText").keyup(function (event) { 
    if (event.keyCode == 13) { 
     var text = $('.inputText').val(); 
     if (text == ("example")) { 
      $('.example').fadeOut('fast'); 
      $('.example2').fadeIn('slow'); 
      $('.inputText').val(''); 
      if (event.keyCode == 13) { 
       var text = $('.inputText').val(); 
       if (text == ("example2")) { 
        $('.example2').fadeOut('fast'); 
        $('.example3').fadeIn('slow'); 
        $('.inputText').val(''); 
       } 
      } 
     } else { 
      $('.example').css('color', 'red'); 
     } 
    } 
}); 
+2

嘗試跟隨你的邏輯,它會如何進入聲明'if(text ==(「example2」))''? – Danny

+0

顯示您的HTML。 – Satpal

回答

1

我認爲你的首要問題是你的邏輯結構。基本上,在你的代碼中,你試圖加載用戶輸入(通過獲得$('.inputText').val())兩次,而不讓用戶實際輸入任何內容。你需要做的是在你的事件監聽器之外存儲一些狀態,然後每次用戶按下Enter時更新狀態。請參閱http://jsfiddle.net/qT96T/以瞭解我想要實現的工作示例。

+0

謝謝squid314!這很好。非常感激! :) – user3298548