0

行を動的に挿入しています。各 td に id を割り当てて、後でアクセスして更新できるようにするにはどうすればよいですか。私はそれに固執しています

                       $(document).ready(function(){
            var rowNumber = 0;
            var myData=new Array(6);
            myData[0]="txt1";
            myData[1]="txt2";
            myData[2]="txt3";
            myData[3]="txt4";
            myData[4]="txt5";
            myData[5]="txt6";
            $('#display').click(function(){
                //Get the user input
                for(i=0; i<6; i++)
                {
                if(document.getElementById(myData[i]).value !=0)
                {
                var nameInput = document.getElementById(myData[i]).name;

                var Quan = document.getElementById(myData[i]).value;
                //Create a new row with an ID
                var newRow = $('<tr />').attr('id', 'row' + rowNumber);
                //Add some HTML to the row



                newRow.html('<td>' + nameInput + '</td><td>' + Quan + '</td>');

                //Append the new row to the body of the #myTable table
                $('#myTable tbody').append(newRow);

                //Iterate row number
                rowNumber++;

                }
                }
            });
        });

行を動的に挿入しています。各 td に id を割り当てて、後でアクセスして更新できるようにするにはどうすればよいですか。私はそれに固執しています。

4

2 に答える 2

0

あなたは本当にする必要はありません。jQueryのnth()セレクターを使用できます。

例えば:

$('td:nth(2)').html()

ここでのデモ:http://jsfiddle.net/Uz4Ze/

<td>または、の代わりに各クラスを割り当てることをお勧めしidます。これにより、各列のスタイルを変えることができるという追加の利点が得られます。

于 2012-07-28T08:29:23.877 に答える
0

あなたはそれを必要としません

var td = $('#myTable tr:eq(2) td:eq(1)'); // 3 row 2 col

デモを見る

でももしあなたが欲しければ

次のように書きます。

for(i = 0; i < 6; i++) {
  ...
  newRow.append('<td id="' + ('td_' + rowNumber + '_1') + '">' + nameInput + '</td>');
  newRow.append('<td id="' + ('td_' + rowNumber + '_2') + '">' + nameInput + '</td>');
  ...
}

次にアクセスします。

$('#2_1').css('background', '#ccc'); // make grey background in 2 row 1 col
于 2012-07-28T08:23:41.323 に答える