2016-12-05 1 views
-1

게시물 코드 만 입력하면 주소를 얻을 수있는 기능을 구현하고 있습니다. 일반적으로 다음 버튼을 클릭하면 주소 목록이 표시됩니다. 사실 나는 또한 사용자가 텍스트 필드에 zipcode를 입력하고 Enter 키를 눌러 주소 목록을 표시하는 입력 버튼 기능을 구현하려고합니다. 여기 동일한 버튼을 클릭 할 때 리디렉션을 방지 할 수없는 이유는 무엇입니까?

내 코드입니다 :

$('#nxt-button').click(function(event){ 
    event.preventDefault(); 
// ajax call for getting all addresses related to entered post code 
return false; 
}); 

// 버튼 기능 입력 이제

$("#post-code-textfield").keyup(function(event){ 
     if(event.keyCode == 13){ 
      $("#nxt-button").click(); 
      event.preventDefault(); 
      return false; 
     } 
     }); 

문제입니다 나는 바로 옆에 버튼에서 preventDefault 작품을 눌러하지만 누를 때 키의를 입력 할 때 페이지가 다음 페이지로 리디렉션됩니다.

도와주세요.

+2

HTML을 공유 할 수 있습니까? – Satpal

+0

keyup 이벤트가 keydown 이벤트로 변경됩니다.이 이벤트는 이미 keyup이 발생하면 발생합니다. – Enijar

+3

입력 필드가 양식 안에 있으며 입력을 누르면 양식을 제출할 것입니다. 양식이 제출되지 않도록해야합니다. 귀하의 마크 업을 게시하여 도움을 받으십시오. – anu

답변

1

것은 내가 필드가 폼 내부에 있다고 가정 keypress 이벤트

$("#post-code-textfield").keypress(function(event){ 
     if(event.keyCode == 13){ 
      $("#nxt-button").click(); 
      event.preventDefault(); 
      return false; 
     } 
     }); 
+1

[양식 제출을 방지하는 것이 좋습니다] (http://stackoverflow.com/a/40971450/542251) 한 가지 문제를 해결할 수 있습니다. – Liam

1

를 사용하여 시도하고 당신이 당신의 양식을 입력 누를 때 방지 form를 제출하는 것입니다 필요 submitting.All 그건 :

$('form').submit(function(event){ 
     event.preventDefault(); 
}); 

양식 제출을 방지하려면 return false도 작동해야합니다.

+0

몇 가지 설명이 도움이 될 것입니다. ? 그러나 이것은 문제입니다. Enter는 양식을 제출하고 버튼을 누르지 않습니다. – Liam

0

버튼에 href attr이있는 경우이를 제거하고 수신기에서 직접 click 리디렉션을 수행하십시오.

관련 문제