2014-02-11 3 views
1

바로 지금 사용자가 단어를 입력하는 입력 텍스트 상자가 있습니다. 일단 그 단어를 입력하고 Enter를 누르면 단어가 사라지고 새 단어가 나타납니다. 그들이 잘못 입력하면 색상이 빨간색으로 바뀝니다. 내 중첩 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

관련 문제