Ajax처리를 쓸 때, 검색 기능을 넣고 '검색'버튼을 누르면 제대로 실행되는데, 바로 엔터를 치면 다른 화면으로 넘어가요.
- 작성자 :
- 전*연
- 작성일 :
- 2015-10-02 13:42:53
- 조회수 :
- 1,421
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
제가 jsp가 3개 ( 메인화면, A화면, B화면) 있고,
메인화면에서 Ajax로 A화면이랑 B화면을 불러오는데
A화면이랑 B화면 안에 검색 기능을 넣어서 검색을 할려는데
검색어를 입력한 후, 검색 버튼을 직접 누르면 메인화면안에 A/B가 제대로 포함된채로 Ajax가 잘 실행이 되고, 검색도 잘 되는데
검색어를 입력한 후에 엔터를 누르면, 메인화면으로 가는게 아니라 그냥 화면에 A/B화면만 뜹니다.
엔터키 이벤트를 넣지도 않았는데 말이죠...
엔터를 눌렀을때도, 검색 버튼을 누른것처럼 Ajax가 다 실행 되도록 하고싶은데
어떻게 하면 될까요..
먼저 메인 jsp에서 Ajax를 쓴 부분은
$(function(){
//something TODO
$.ajax({
type:"POST",
url:"forwizBoardMajorList.do",
datatype:"html",
success:function(data,txtStatus){
console.log(data);
$("#table").html(data);
},
error: function(xhr, txtStatus, errorThrown){
alert("error" + errorThrown);
}
});
})
function fn_major(){
$(function(){fn_major
var params={}
params.searchCondition2 = jQuery("form select[name='searchCondition2'] option:selected").val();
params.searchKeyword = jQuery("form input[name='searchKeyword']").val();
params.pageIndex = jQuery("form input[name='pageIndex']").val();
$.ajax({
type:"POST",
url:"forwizBoardMajorList.do",
data:params,
datatype:"html",
success:function(data,txtStatus){
console.log(data);
$("#table").html(data);
},
error: function(xhr, txtStatus, errorThrown){
alert("error" + errorThrown);
}
});
});
}
function fn_refinement(){
$(function(){
$.ajax({
type:"POST",
url:"forwizBoardRefinementList.do",
datatype:"html",
success:function(data,txtStatus){
console.log(data);
$("#table").html(data);
},
error: function(xhr, txtStatus, errorThrown){
alert("error" + errorThrown);
}
});
});
}
이거이구요,
A화면, B화면 jsp에서도
검색을 할 시엔,
A화면-fn_major, B화면- fn_refinement
Ajax만 넣었습니다.
제가 메인jsp로 가게 해놨는데
왜 엔터키를 실행하면 메인jsp로 가지않고, A/B 검색 화면으로만 뜨는지...
메인화면에서 Ajax로 A화면이랑 B화면을 불러오는데
A화면이랑 B화면 안에 검색 기능을 넣어서 검색을 할려는데
검색어를 입력한 후, 검색 버튼을 직접 누르면 메인화면안에 A/B가 제대로 포함된채로 Ajax가 잘 실행이 되고, 검색도 잘 되는데
검색어를 입력한 후에 엔터를 누르면, 메인화면으로 가는게 아니라 그냥 화면에 A/B화면만 뜹니다.
엔터키 이벤트를 넣지도 않았는데 말이죠...
엔터를 눌렀을때도, 검색 버튼을 누른것처럼 Ajax가 다 실행 되도록 하고싶은데
어떻게 하면 될까요..
먼저 메인 jsp에서 Ajax를 쓴 부분은
$(function(){
//something TODO
$.ajax({
type:"POST",
url:"forwizBoardMajorList.do",
datatype:"html",
success:function(data,txtStatus){
console.log(data);
$("#table").html(data);
},
error: function(xhr, txtStatus, errorThrown){
alert("error" + errorThrown);
}
});
})
function fn_major(){
$(function(){fn_major
var params={}
params.searchCondition2 = jQuery("form select[name='searchCondition2'] option:selected").val();
params.searchKeyword = jQuery("form input[name='searchKeyword']").val();
params.pageIndex = jQuery("form input[name='pageIndex']").val();
$.ajax({
type:"POST",
url:"forwizBoardMajorList.do",
data:params,
datatype:"html",
success:function(data,txtStatus){
console.log(data);
$("#table").html(data);
},
error: function(xhr, txtStatus, errorThrown){
alert("error" + errorThrown);
}
});
});
}
function fn_refinement(){
$(function(){
$.ajax({
type:"POST",
url:"forwizBoardRefinementList.do",
datatype:"html",
success:function(data,txtStatus){
console.log(data);
$("#table").html(data);
},
error: function(xhr, txtStatus, errorThrown){
alert("error" + errorThrown);
}
});
});
}
이거이구요,
A화면, B화면 jsp에서도
검색을 할 시엔,
A화면-fn_major, B화면- fn_refinement
Ajax만 넣었습니다.
제가 메인jsp로 가게 해놨는데
왜 엔터키를 실행하면 메인jsp로 가지않고, A/B 검색 화면으로만 뜨는지...
A
전부연님, 안녕하세요.
엔터키 입력시 화면이 refresh 되는 등의 문제가 발생하시는 듯 합니다.
자바스크립트를 이용해 엔터키가 입력되었을 경우 해당 function을 수행하도록 스크립트를 짜주시면 될 것 같습니다.
간단한 예시가 포함된 외부링크를 걸어드리니, 참고하시기 바랍니다.
http://blog.naver.com/fromyongsik/40136500776
감사합니다.
엔터키 입력시 화면이 refresh 되는 등의 문제가 발생하시는 듯 합니다.
자바스크립트를 이용해 엔터키가 입력되었을 경우 해당 function을 수행하도록 스크립트를 짜주시면 될 것 같습니다.
간단한 예시가 포함된 외부링크를 걸어드리니, 참고하시기 바랍니다.
http://blog.naver.com/fromyongsik/40136500776
감사합니다.