"e"がJavascript
のメソッドの "イベント"を表している限り、私はそれらを呼び出すときにJavascript
メソッドで以下に述べるようないくつかのプロパティを使いたいと思ったらどういうことを理解していません。私はこの方法でe.preventDefault()またはe.ctrlKeyを使用することができる。例えばなぜonclickから呼び出されたJavascriptメソッドでeが使用されていないのですか?
:
$(".menuItem").click(function (e) {
e.preventDefault();
//Open url in new tab with ctrl key press
if (e.ctrlKey) {
window.open(url, '_blank');
event.stopPropagation();
return false;
}
//... code omitted for brevity
});
しかし、私は、すなわち.menuItem
フォーム要素から呼び出され、その方法でそれらを使用することはできません。下の方法でそれを使用する可能性はありますか?
function TestFunction(e, controller, action) {
e.preventDefault();
//Open url in new tab with ctrl key press
if (e.ctrlKey) {
window.open(url, '_blank');
event.stopPropagation();
return false;
}
//... code omitted for brevity
});
};
更新:私はその方法で電子を使用する場合
<a onclick="TestFunction('Account', '_Register')" id="test" class="nav-link ">
"捕捉されなかっにReferenceError:eが定義されていません"エラーが発生した Iは、以下に示すようにTestFunction()を呼び出します。何か案が?人々は、イベントハンドラが受け取る引数を宣言するためにその名前を使用しているため
あなたが見ることができるように、あなたの 'TestFunction'には' e'パラメータが存在しない、あなたは私が質問に記載されたエラーが発生することが –
はい、それを使用するときに追加する必要があります。私は質問にeパラメータを追加しました。何か案が? –
'TestFunction'をクリックイベントにバインドするにはどうしたらいいですか?あなたのコード '$("。menuItem ")にありますか?click(TestFunction);'? –