2017-04-03 1 views
0

필자는 work-through에서 enter를 눌러 한 텍스트 필드에서 다른 텍스트 필드로 포커스 이동을 구현하려고했습니다. 나는 다음과 같은 링크에서 가능 해답을 발견 :커서를 다음 텍스트 필드로 이동하는 방법은 무엇입니까?

How to go to next textbox when enter is pressed?
Move Cursor to next text Field pressing Enter

그러나이 중 어느 것도 나를 위해 작동하지 않습니다. 내 코드 :

<script> 
$('input[type='text']').keyup(function(e) { 
    if(e.keyCode == 13) { 
     $(this).next().focus(); 
    } 
}); 
</script> 
<input type='text' /> 
<input type='text' /> 
<input type='text' /> 
<input type='text' /> 
<input type='text' /> 
<input type='text' /> 
+0

실제 퀘스트 정보 on - 서버 측과 아무 관련이 없습니다. 당신이하는 일은 완전히 클라이언트 측에서 스크립트 태그를 입력 아래로 움직여 수정합니다. –

+1

왜 입력을 사용 하시겠습니까? 말 그대로 아무도 그 행동을 기대하지 않습니다. – Slime

+1

@ Waxi 네 말이 맞아. 아무도 입력을 사용하지 않으면 입력을 사용하여 다음 입력을 얻는 것은 쓸모가 없습니다. 입력 포커스를 전환하기위한 기본 키는 ** Tab 키입니다 ** ** 자바 스크립트 – Aloso

답변

1

그냥 $('input[type="text"]')$('input[type='text']')를 업데이트합니다. 너에는 닫히지 않은 끈이 있었다.

근무 코드 here.

+0

사실 나는 PHP에서 변수 $ var 안에 코드를 작성하고 있습니다. echo $ var. 그래서 $ ('input [type ='text ']')를 사용했습니다. 그렇지 않으면 오류가 표시됩니다. ** 구문 분석 오류 : 구문 오류, /opt/lampp/htdocs/1.php의 4 줄에있는 ** 예기치 않은 'text'(T_STRING) ** –

+0

@DragonBall 그러나 PHP 부분을 제거한 후 솔루션 니콜라스가 일해야 해? –

+0

@ Al.G. 이 또한 작동하지 않습니다. http://codepen.io/anon/pen/aJMpEj –

1

$(document).ready(function() { 
 

 
\t $('form').on('submit', function (event) { 
 
\t  event.preventDefault(); 
 
\t }) 
 

 
\t $('input[type="text"]').keyup(function(event) { 
 
\t  if(event.keyCode === 13) { 
 
     \t $(this).next().focus(); 
 
\t  } 
 
\t }); 
 

 
})
<script src="https://code.jquery.com/jquery-3.2.1.slim.js"></script> 
 
<form> 
 
    \t <input type="text"/> 
 
    \t <input type="text"/> 
 
    \t <input type="text"/> 
 
    \t <input type="text"/> 
 
    \t <input type="text"/> 
 
</form>

+0

jQuery가 포함되어 있지 않기 때문입니다. 코드 자체는 괜찮아 보입니다. – Aloso

+0

고정! 그 중 하나를 가리키는 주셔서 감사합니다 - 누군가가 내게 손을 줄 수있는 방법, jQuery 스 니펫에 포함시킬? 지금 당장 수수께끼가 있습니다 : https://jsfiddle.net/qbbcmrnk/ –

0

여기에 무슨 일이 일어나고 있는지 : 당신이 할 수있는 일

<!-- Start loading the page --> 
<script> 
// execute javascript. Note that there 
// are no inputs on the page currently - they will be loaded later 

// This selector matches nothing: 
$("input[type='text']").keyup(function(e) { 
    if(e.keyCode == 13) { 
     $(this).next().focus(); 
    } 
}); 
</script> 
<!-- JavaScript executed. Now add inputs to the page --> 
<input type='text' /> 
<input type='text' /> 

는 온로드 기능에 keyup 청취자를 입력 아래 <script>을 (쉬운) 이동하거나 이동 중입니다 :

$(function(){ 
// i.e. wrap your js here 

// the js here will be executed only after page has loaded 
}); 
+0

스크립트를 아래로 움직이면 작동하지 않습니다. http://codepen.io/anon/pen/PpLpbp –

+0

@DragonBall 죄송합니다. 따옴표를 수정하는 것을 잊었습니다. 이제는 일해야합니다. –

+0

@ AI.G. 지금 이미지를 추가하고 있습니다. 작동하지 않습니다. https://postimg.org/image/ozvdutibz/ –

관련 문제