Webアプリケーションには、ユーザーがボタンをクリックしたときと同じ操作をする、またはアクセスキーでボタンを押すときのショートカットが必要です。ページを再ロードせずにjavascriptでショートカットボタンをクリックする方法
私はあなたに私の問題を示すために、自分のコードを簡素化:
<html>
<head><script src="jquery-1.4.2.js" type="text/javascript"></script></head>
<form>
<body>
<div id="myDiv">text</div>
<input name="cmdChangeText" type="submit" value="change text" onclick="document.getElementById('myDiv').innerText='text is changed'; return false;" />
<input name="cmdTestButton" type="submit" value="hello" onclick="alert('hello'); return false;" accesskey='z' />
</body>
</form>
<script type="text/javascript">
document.onkeydown = function() {
if (event.keyCode == 83) { //83 = 's'
window.$('[accesskey=z]').click();
}
}
</script>
</html>
最初のボタンは、テキストを変更します。 2番目のボタンをクリックするか、またはアクセスキー(IEのAlt + Z)をクリックすると、警告が表示されますが、ページはリロードされません。
この例では、Sのボタンを押すと警告が表示されますが、ページがリロードされます。 return false;
がこのように無視されるのはなぜですか、私はそれについて何ができますか?
IE8とChromeを使用して問題を再現できませんでした。どのブラウザを使用していますか? –
本当ですか?最初にテキストを変更し、 's'を押すと、テキストは再び変更されません。 IE8でコードをテストしました。 jqueryファイルを忘れないでください! –
これも再現できません。返品虚偽はその仕事をしているようだ。 – Michal