input=text에서 자동전송
본문
selectbox에서는 값을 변경하면 onchange 이벤트로 해당 값을 자동으로 전송할 수 있습니다.
그런데 input=text에서는 onchang 이벤트가 제한적이죠... 외부를 클릭해야하는....
그래서 생각한것이 타이핑을 치다가 멈추면 지정된 몇 초후에 자동 전송을 하는 방법을 생각해봤습니다.
구현 방법은 모르겠고요^^;;
어떻게 구현하면 될까요?
답변 2
/* JQuery Version */
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<input type="text" id="input-tag">
<script>
var timer, limit_time = 5; // 키입력후, 몇초동안 입력이 없으면 자동전송할까요?
$(function(){
$("#input-tag").keyup(function(){
window.clearTimeout(timer);
timer = window.setTimeout(function(){
// location.href = $('#input-tag').val();
// $('form').submit();
location.href = "http://www.naver.com";
}, limit_time * 1000);
});
});
</script>
/* 순수 자바스크립트 버전 */
<input type="text" id="input-tag">
<script>
var timer, limit_time = 5; // 키입력후, 몇초동안 입력이 없으면 자동전송할까요?
window.onload = function(){
var obj = document.getElementById("input-tag");
obj.onkeyup = function(){
window.clearTimeout(timer);
timer = window.setTimeout(function(){
// location.href = document.getElementById("input-tag").value;
// document.form.submit();
location.href = 'http://www.naver.com';
}, limit_time * 1000);
};
};
</script>
onkeyup
답변을 작성하시기 전에 로그인 해주세요.