テーブルの最後のセルにデータを入力するときに、新しい行をテーブルに追加したいと考えています。
リンクを使用してこれを行う方法について、このフィドルを見てきました。これを変更して、最後の td で onChange を使用して追加の行が追加されるようにします。
したがって、jquery 1.7 を使用すると、コードは次のようになります。
<table class="authors-list">
<tr><td>author's first name</td><td>author's last name</td></tr>
<tr><td><input type="text" name="first_name" /></td><td><input type="text" name="last_name" /></td></tr>
</table>
<a href="#" title="" class="add-author">Add Author</a>
<script type="text/javascript">
var counter = 1;
jQuery('a.add-author').click(function(event){
event.preventDefault();
counter++;
var newRow = jQuery('<tr><td><input type="text" name="first_name' +
counter + '"/></td><td><input type="text" name="last_name' +
counter + '"/></td></tr>');
jQuery('table.authors-list').append(newRow);
});
</script>
これを変更して、データの変更/入力に関する行を最後の TD に動的に追加したいと考えています。
何かのようなもの、
<table class="authors-list">
<tr><td>author's first name</td><td>author's last name</td></tr>
<tr><td><input type="text" name="first_name" /></td><td><input type="text" name="last_name" onclick="add-author"/></td></tr>
</table>
<script type="text/javascript">
var counter = 1;
jQuery('a.add-author').click(function(event){
event.preventDefault();
counter++;
var newRow = jQuery('<tr><td><input type="text" name="first_name' +
counter + '"/></td><td><input type="text" name="last_name' +
counter + '"/></td></tr>');
jQuery('table.authors-list').append(newRow);
});
</script>
そのため、onclick / onchange は jQuery をトリガーして、カウンター値に従って一意の ID を持つ新しい行を追加します。
どんな助けでも大歓迎です。