1

キーボードを使用して数値を入力しようとしています。

私の問題は次のとおりです。キーボードには「受け入れる」ボタンがあり、いくつかのテキストフィールドがあります。テキストフィールドごとに異なるアクションを追加したいです。複数の属性セレクターを使用しようとしましたが、機能しません。

<input id="txt1" type="text" /> </br>
<input id="txt2" type="text" /> </br>
<input id="txt3" type="text" /> </br>

$('input[type=text]').keyboard({
    layout: "num"
});

$('.ui-keyboard').on('click', 'input[name="key_accept"]',function() {
    alert('Accept button was clicked in text1');
    // do your stuff here
});

このリンクで例を示すことができますhttp://jsfiddle.net/Mils/W2xFX/25/

アラートはすべてのテキスト フィールドに適用されますが、テキストごとに異なるアラートが必要です。

4

2 に答える 2

1

http://jsfiddle.net/W2xFX/35/

アクティブなテキスト ボックス (最後にフォーカスされたもの) を追跡するだけです。

于 2012-10-11T15:40:14.330 に答える
1

使用しているコンポーネントは受け入れとキャンセルのイベントを公開しないため、外部ソリューションが必要です。たとえば、現在の要素をフォーカスして保存し、accept ボタン イベント内で使用できます。

デモ: http://jsfiddle.net/W2xFX/27/

コード:

var currentKB = null;
$('input[type=text]').focus(function() {
    currentKB = this;
    return true;
});

$('input[type=text]').keyboard({
    layout: "num"
});

$('.ui-keyboard').on('click', 'input[name="key_accept"]',function(e, x) {
    alert('Accept button was clicked in ' + currentKB.id);
    // do your stuff here
});
于 2012-10-11T15:35:27.077 に答える