2012-01-15 5 views
1

テーブルの中にいくつかの行と入力があります。ユーザーが+キーをテキストボックス内に押すたびに、そのフィールドに新しい行を追加します。私はそれをすることができますが、私が持っている問題は、この関数が初めてのことです。 2番目のフィールドで+キーを押すと、何も起こりません。関数の最初の実行後にjQueryの動作が失われる

This is my code in jsFiddle

$(document).ready(function(){ 
    $(".data").bind('keyup',function(e){ 
     if(e.which == 107){ 
      var id = $(this).attr('id'); 
      var content = $('#'+id).val(); 
      var newContent = content.replace('+',''); 
      $('#'+id).val(newContent); 

      var current_rows = ($('#myTable tr').length); 
      current_rows = parseInt(current_rows); 
      var newId = current_rows + 1; 

      var newRow = '<td><input type="text" class="data" id="'+newId+'" /></td>'; 
      $('#myTable tr:last').after(newRow); 
      $('#'+newId).focus(); 
     } 
    }); 
    $('#1').focus(); 
}); 

私は何をしなければなりませんか?

答えて

2

bindの代わりにliveを使用してみてください。しかし、私が生きていると思うドキュメンテーションを見ると、今は時代遅れです。

+0

私は自分のコードで 'bind'を使っていませんでした! –

+2

本当に? –

+0

@MohammadSaberiあなたがしましたが、バインドがあまり良くない場合は、** on ** –

関連する問題