4

Tabテキストボックス内のキーを押したときに警告メッセージを表示するなどのイベントをトリガーしたい。

<input type="text" />

$("input").blur(function (e) {
   if (e.which == 9)
       alert("Hurray!!!");
});

私がしたいのは、テキストボックス内に入力するたびにヒットTabすると何かが起こるということです。

使用していますjquery1.7.2.min.js

私がそれを正しく行っているかどうかは本当にわかりません。

デモ用http://jsfiddle.net/QfCpC/

4

7 に答える 7

13
$("input").keydown(function (e) {

   if (e.which == 9)
       alert("Hurray!!!");
});

フィドルデモ

于 2013-02-15T07:08:24.523 に答える
2

これは役に立ちますか

$("input").live("keydown" , function (e) {
if (e.which == 9)
   alert("Hurray!!!");
});

http://jsfiddle.net/QfCpC/3/

于 2013-02-15T07:09:35.480 に答える
2
<input type="text" />

$("input").keydown(function (e) {
   if (e.which == 9)
        $('#someButton).trigger('click');//or you can directly call the handler also
});
于 2013-02-15T07:12:05.457 に答える
2
$(document).ready(function() {

    $("input").bind("keydown",function (e) {

   if (e.which == 9)        
       alert("Hurray!!!");
});
});

ここでデモ..

http://jsfiddle.net/QfCpC/

于 2013-02-15T07:16:23.080 に答える
1

試してみてください:http://jsfiddle.net/cEzLL/

$("input").keydown(function (e) {
   if (e.keyCode === 9)
       alert("Hurray!!!");
});
于 2013-02-15T07:10:03.480 に答える
1

その理由は、「タブ」を押すと2つのアクションが発生するためです。

  1. タブボタンのKeyUp
  2. 入力タイプフィールドのぼかしアクション

コードによると、blurイベントにeventlistnerを追加しています...そしてblurイベントにはキーバインディングを提供するプロパティがありません。

したがって、これを行うには、「キーダウン」をバインドする必要があります。

$("input").keydown(function (e) {
  if (e.which == 9)
       alert("YEYYYYYYY!!!");
});
于 2013-02-15T07:11:12.140 に答える
1

パラメータを正しく設定するe.whichには、キーダウンイベントから呼び出す必要があると思います。

ここでフィドルを参照してください。http://jsfiddle.net/QfCpC/2/

于 2013-02-15T07:08:42.753 に答える