2

私はhtmlテキストボックスを持っています

 <input type="text" id="inputfilter" style="width: 230px;" /> 

この入力を AJAX 経由で動的に作成しています。

このチェックボックスの値を取得するにはどうすればよいですか? 私は試した

$("#inputfilter").val() 

しかし、テキストボックスはページの初期化時に作成されたのではなく、後で AJAX を介して作成されたため、機能しませんでした。私はこのようなことを試しました

$("#inputfilter").live('val', function(e) {})

しかし、うまくいきませんでした。

ありがとう

4

2 に答える 2

2
$("#inputfilter").val()

動作するはずです。機能していないと私が考えることができる唯一の理由は、要素を作成する前に値を取得しようとしたことです(ここでは、正しい要素を使用して要素を作成できたと仮定しますid..しかし、地獄、あなたは決して知りません)。

注:.liveはクリックなどのイベント処理用であるため、ここでは関係ありません (ただし、イベントの場合は 1 つの方法です)。

于 2013-07-28T18:32:54.280 に答える
1

コントロールを動的に作成するために使用する場合append()、アプローチは問題ないはずです。JSFIDDLEでテスト コードを試してください。

私のテスト コードは ajax 呼び出しをシミュレートし、値を設定して取得すると機能します。

<div id="parentId"></div>

setTimeout(function () {
    $('#parentId').append('<input type="text" id="inputfilter" style="width: 230px;" />')
}, 2000);

setTimeout(function () {
    $('#inputfilter').val('test');
}, 3000);

setTimeout(function () {
    console.log($('#inputfilter').val());
}, 4000);
于 2013-07-28T18:35:29.727 に答える