嘿伙计们我试图从我的javascript方法返回false。它在chrome中工作正常但是当同样的事情在firefox中出现时,它被重定向到apage并显示错误的字符串。
以下是我的代码
if(emptyCheck(form.corpId.value)){
alert("Please select Corporate of the traveler");
form.corpId.focus();
return false;
}
答案 0 :(得分:1)
在名为event
或evt
的事件处理程序中创建一个参数,或者其他任何内容。
点击preventDefault()
:
document.getElementById('element').addEventListener('click', function(event) {
alert('this works');
evt.preventDefault();
}, false);
仅在您附加如下事件时才返回false
:
document.getElementById('element').onclick = function() {
alert('this works');
return false;
};
前段时间我在stackoverflow上学到了这个,我会找到你原来的帖子。
另一件事是:如果javascript抛出异常,它将通过返回false落下,因此浏览器将执行默认行为。就像点击一个灵将导航到该位置。
打开javascript控制台并检查是否有任何异常抛出!
编辑:以下是Tim Down的原帖:Returning false from click handler doesn't work in Firefox
答案 1 :(得分:1)
你可以试试这个;
if(emptyCheck(form.corpId.value)){
alert("Please select Corporate of the traveler");
form.corpId.focus();
throw("exeption message");
}
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/throw