2012-03-15 28 views
0

私は、PHPを使用して動的に生成されたテーブルを持っています。テーブルには、行に基づいてデータベースを更新するために使用されているいくつかのテキストフィールドがあります。この質問は:Complete question、答えに基づいて私は入力が押されたときにテキストフィールドの値を取得するjavascriptを使用しています。ジャバスクリプトが使用されている:動的に生成されるテキストフィールドの値を取得する

$("#details input").live('keypress', function (e) { 
    var code = (e.keyCode ? e.keyCode : e.which); 
    if (code == 13) { 
     e.preventDefault(); 
     var ourId = $(this).id; 
     var updatedText = $(this).val; 

     alert(updatedText); 
    } 
}); 

しかし、何らかの理由$(this)に予想される結果を返すされていません。

ありがとうございます、ありがとうございます。

+0

「期待した結果を返さない」とはどういう意味ですか? '警告'は間違った値を出力していますか? –

+0

申し訳ありませんが、私はテキストフィールドのIDを取得できません。値をval()で使用するようになりました! – Namit

答えて

0

そこにコンセプトが混在しています。 $(this).id --> this.id OR $(this).attr('id')および$(this).val --> $(this).val()。推奨されていないlive()の代わりに、委任のためにon()を使用してください。

$("#details").on('keypress', 'input', function(){ 
    // Bla 
}); 
+0

私はこれまでに使用していましたが、フィールドが動的に生成されているので動作しませんでしたので、 'live() 'を使用しなければなりませんでした – Namit

+0

私が投稿したような 'on()'のイベント委譲フォーム。あなたはそれについてJQ API – elclanrs

+0

で読むことができます。これはまだ 'on()'で動作しません。 – Namit

4

valはメソッドでありプロパティではないので、関数のように使用する必要があります。

変更$(this).val

$(this).val()に、入力要素のidはちょうどthis.idを使用取得します。 idはdom elemdntのプロパティです。

+0

値は正常に動作しますが、idは未定義ですか? : – Namit

+0

'id'のために' this.id'だけを使用します – ShankarSangoli

関連する問題