2

TD 内のリンクをクリックすると呼び出される関数があります。クリックすると、リンクが含まれる TR まで DOM をたどり、その後に新しい TR を作成します。

ここまでは順調ですね。

TD を含む新しい TR を作成したので、その新しく作成された TD を参照するのに最適なものは何ですか。または、元のクリックされたオブジェクトから作成した新しい TD に戻る必要がありますか?

$("td.expandable a").click(function(){
    // figure out the number of columns we need to span
    var colspan;
    colspan = $(this).parents("tr").children("td").size();

    // insert the new TR
    $(this).parents("tr").after("<tr><td colspan=' & colspan & '></td></tr>");

    // **what syntax would I use here to refer to the above made TD?**

    return false;
});
4

2 に答える 2

0

insertAfter().wrap() は、このタイプのものに便利です:

$('td.expandable a').click(function() {
    var $parent = $(this).parents('tr');
    var colCount = $parent.children('td').size();
    var $td = $('<td colspan=' + colCount + '></td>');
    $td.insertAfter($parent).wrap('<tr></tr>');
    return false;
});

文字列連結演算子「+」を使用しました。「&」は、整数に対してビットごとの AND を計算するために使用されます。

于 2009-10-23T15:16:10.830 に答える