Tabキーの押下をキャプチャし、デフォルトのアクションを取り消して、自分のJavaScript関数を呼び出したいとします。jQuery:テキストボックス内でTABキー押下をキャプチャする方法
答えて
編集:あなたの要素を動的に挿入されているので、あなたはあなたの例のようにdelegated on()
を使用する必要がありますが、あなたが原因@Marcのコメントとして、KeyDownイベントイベントにバインドする必要があり、IEでのKeyPressイベントのdoesn文字以外のキーをキャプチャしないでください:
例を確認してくださいhereを確認してください。 jQueryの1.9で
$('#textbox').live('keypress', function(e) {
if (e.keyCode === 9) {
e.preventDefault();
// do work
}
});
、e.preventDefault()を使用し、デフォルトのアクションをキャンセルするとテキストボックスがあるとします。関数の最初の行に挿入します。 –
IE6 + –
@JonでKeypressがIEの非文字キーをキャプチャしない – Marc
の作業例:
$('body').on('keydown', '#textbox', function(e) {
if (e.which == 9) {
e.preventDefault();
// do your code
}
});
'e.preventDefault();'をダブルクリックしてテキストボックスに空白を挿入しないようにします。 – stil
、上記に示す方法では、私は少し古いjqueryのを使用していますすることができる、私のために動作しませんでしたが、最終的に以下のコードスニペットは、のために働く - 念のために投稿します私の同じ位置に誰か
$('#textBox').live('keydown', function(e) {
if (e.keyCode == 9) {
e.preventDefault();
alert('tab');
}
});
タブの下キーを使用しての重要な部分は、タブは常に、すでに何かをしようとすることを知っているが、最後に「falseを返す」ことを忘れないでください。ここで
は私がやったことです。私は.blurと私のフォームフォーカスがどこにあるかを交換する関数で動作する関数を持っています。基本的には、フォームの最後に入力を追加し、ぼかしの計算を実行している間にそこに移動します。
$(this).children('input[type=text]').blur(timeEntered).keydown(function (e) {
var code = e.keyCode || e.which;
if (code == "9") {
window.tabPressed = true;
// Here is the external function you want to call, let your external
// function handle all your custom code, then return false to
// prevent the tab button from doing whatever it would naturally do.
focusShift($(this));
return false;
} else {
window.tabPressed = false;
}
// This is the code i want to execute, it might be different than yours
function focusShift(trigger) {
var focalPoint = false;
if (tabPressed == true) {
console.log($(trigger).parents("td").next("td"));
focalPoint = $(trigger).parents("td").next("td");
}
if (focalPoint) {
$(focalPoint).trigger("click");
}
}
});
これを試してみてください:
$('#contra').focusout(function(){
$('#btnPassword').focus();
});
あなたは同上txtNameまた
$("[id*=txtName]").on('keydown', function(e) {
var keyCode = e.keyCode || e.which;
if (keyCode == 9) {
e.preventDefault();
alert('Tab Pressed');
}
});
- 1. "shift + tab"キー押下イベントをキャプチャする
- 2. キャプチャ方法GtkEntryでEnterキーを押す
- 3. キャプチャの異なるキー押下
- 4. のjQuery ::キー押下とフォーカス
- 5. Tabキーを押したときにkeydownでjQuery関数を実行する方法を停止する方法
- 6. FirefoxでTabキーの押下が機能しない
- 7. Altキーを1回押すだけでキー押下を検出する方法
- 8. Onキー押下変更イベントのテキストボックスとボタンクリックトリガ変更イベントのテキストボックスjquery
- 9. フォーラムでTabキーを押した場合の取得方法
- 10. jQueryでキー押下(keydown)をトリガー
- 11. WindowsセキュリティポップアップでTABボタンを押す方法
- 12. jqueryのescキー押下でdivの配列を非表示にする方法
- 13. バインドする方法<Tab> Perl Tkでキーを押しますか?
- 14. ウィンドウ内のコントロールをTabキーで移動する方法は?
- 15. TextBoxのCtrl + 1キーの押下方法
- 16. JQueryを使用してキー押下トリガーを送信する方法
- 17. キー押下のキャプチャが失敗します
- 18. がモーダルフォームでF9とF10キーの押下をキャッチする方法
- 19. キーの押下とオンクリックでオーディオタグを有効にする方法
- 20. ウェブブラウザでキー押下を検出する方法
- 21. キー押下jqueryの機能に、バックスペースが
- 22. 複数のキー押下機能jqueryの
- 23. JQuery:キー押下時のイベントのトリガー
- 24. jQuery - 「Tab」キーを押して移動すると入力を「アクティブにする」方法
- 25. 私のWebページ内でAlt + Tabキーを押すことはできますか?
- 26. jQueryを使用してTabキーを押した後でフォーカスを戻す方法は?
- 27. selenium webdriverでControlキーを押し下げる方法は?
- 28. WPF - Ctrl + Shiftキーを押したときのキャプチャ方法
- 29. キー押下でjavascriptを停止する方法(つまりESCキー)
- 30. Vue.jsで複数のキーの押下(上/下)を検出する方法
IE8で\ –
でTabキーを押したときにイベントが発生しない(英数字キーで発生)... .live( 'keypress'、fn)を使用する必要がある –
ライブでのみ動作する場合は、テキスト要素を動的に挿入しています。要素が既にページにある場合は、この例を確認してください:http://jsbin.com/oguhe – CMS