[英]jQuery .append() <tr> and <td> add's <td> outside of <tr>
[英]Append TD('s) after td element
我目前有以下html:
<tr>
<td class="success" rowspan="1">Viability</td>
<td data-rowh="-Checksum">Viability-Checksum</td>
</tr>
<tr>
<td data-rowh="-Request">Viability-Request</td>
</tr>
我想要做的是add columns after each td
帶有data-attribute data-rowh
。 所以它看起來像這樣(testdata):
<tr>
<td class="success" rowspan="1">Viability</td>
<td data-rowh="-Checksum">Viability-Checksum</td>
<td data-check="P1-Checksum">Test P1</td>
<td data-check="P2-Checksum">Test P2</td>
<td data-check="P3-Checksum">Test P3</td>
<td data-check="P4-Checksum">Test P4</td>
<td data-check="P5-Checksum">Test P5</td>
</tr>
<tr>
<td data-rowh="-Request">Viability-Request</td>
<td data-check="P1-Request">Test P1</td>
<td data-check="P2-Request">Test P2</td>
<td data-check="P3-Request">Test P3</td>
<td data-check="P4-Request">Test P4</td>
<td data-check="P5-Request">Test P5</td>
</tr>
我猜想它可以使用以下功能(顯然不能)
$('[data-rowh]').each(function (rIndex, rValue) {
$.each(data.items, function (index, value) {
rValue.after("<td data-check='" + value.name + "-" + rValue.data("rowh") + "'>test " + value.name + "</td>");
})
});
當我將after()函數用於rIndex
或rValue
,出現了錯誤: the property of the method after is not supported by this object
。 我做錯了什么主意嗎?
注意:對於那些感興趣的里程碑,看起來像:
"items" : [
{ "msId": "000104", "name": "P1", "msdescription": "Augustus" }
{ "msId": "000105", "name": "P2", "msdescription": "Descr" }
{ "msId": "000106", "name": "P3", "msdescription": "Test" }
{ "msId": "000107", "name": "P4", "msdescription": "456798" }
{ "msId": "000108", "name": "P5", "msdescription": "Autumn" }
]
在jQuery對象的.each()
循環中,當您引用值(或this
) 而不是 jQuery對象時,您正在使用實際的DOM節點。 為了使用jQuery函數(如.after()
,您需要將其包裝在jQuery對象中:
$(rValue).after(...);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.