Reputation: 663
I have simple enter submit blocker:
$(window).keydown(function(event){
if(event.keyCode == 13){
event.preventDefault();
return false;
}
});
And this is work. But I have one form (fast search) where I want enter submit, so how can I add "if": if(event.keyCode == 13 && NOT IN $('#search'))
Upvotes: 1
Views: 398
Reputation: 16706
if your search id is "search"
window.onkeydown=function(e){
if(e.keyCode==13&&e.target.id!='search'){
e.preventDefault();
}
}
return false == e.preventDefault;e.stopPropagation.
you don't need return false.
for older browsrs
window.onkeydown=function(e){
e=e||window.event;
if((e.keyCode||e.which)==13&&(e.target||e.srcElement).id!='search'){
return false
}
}
.. pure js
Upvotes: 0
Reputation: 17550
You could use something like
$(window).keydown(function(event){
if(event.keyCode == 13 && event.target.closest('#search').length == 0) {
event.preventDefault();
return false;
}
});
Upvotes: 0
Reputation: 27012
If your form has the id of search
$(window).keydown(function(event){
if(event.keyCode == 13 && !$(event.target).closest('#search').length){
event.preventDefault();
return false;
}
});
If your input has the id of search
:
$(window).keydown(function(event){
if(event.keyCode == 13 && !$(event.target).is('#search')){
event.preventDefault();
return false;
}
});
Upvotes: 1
Reputation: 8726
Try this:
$(window).keydown(function(event){
if(event.target.closest('#search').length==0){
if(event.keyCode == 13){
event.preventDefault();
return false;
}
}
});
Upvotes: 0