0

こんにちは、javascript メソッドから false を返そうとしています。Chrome では問題なく動作しますが、Firefox で同じことが実行されると、false 文字列を表示するページにリダイレクトされます。

以下は私のコードです

    if(emptyCheck(form.corpId.value)){
        alert("Please select Corporate of the traveler");
        form.corpId.focus();
        return false;
    }
4

2 に答える 2

1

eventor などと呼ばれるイベントハンドラーでパラメーターを作成します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でこれを学びました。元の投稿を見つけます。

もう 1 つは、javascript が例外をスローすると、false が返されるため、ブラウザはデフォルトの動作を行うことです。リングをクリックすると、その場所に移動します。

JavaScript コンソールを開き、スローされた例外があるかどうかを確認してください!

編集: Tim Down からの元の投稿は次のとおりです: Returning false from click handler does not work in Firefox

于 2013-04-15T06:06:21.010 に答える