我的Web应用程序中有以下标记,其中有一个输入元素,现在我想将下面跨度的文本从“ - ”更改为其他内容。
现在这里是标记: -
<span dir="none">
<table id="OrderQuickOrder_a91a0ce2-7fb6-4c9c-97f5-e851cf4f10a6_MultiChoiceTable" cellspacing="1" cellpadding="0">
<tbody>
<tr>
<td>
<span class="ms-RadioText" title="Yes">
<input id="OrderQuickOrder_****_MultiChoiceOption_0" type="checkbox">
<label for="OrderQuickOrder_**_MultiChoiceOption_0">Yes</label>
</span>
</td>
</tr>
</tbody>
</table>
</span>
<span class="ms-metadata">-</span>
这是我的jQuery选择器: -
$('input[id^="OrderQuickOrder_"]').parent('span').parent('span').nextAll('span').after('<a id="dialogtrigger" href="/*****" target="_blank">Items Order</a>' );
但上面的代码没有改变任何东西。我认为.parent('span').parent('span')
无法选择输入元素的直接父跨度的父跨度...
答案 0 :(得分:1)
使用parents()进行选择:
https://jsfiddle.net/fLb89q4p/
$('input[id^="OrderQuickOrder_"]').parents()
.nextAll('span')
.after('<a id="dialogtrigger" href="/*****" target="_blank">Items Eligable for Quick Order</a>' );
如果要删除文本并插入新文本,请使用:
$('input[id^="OrderQuickOrder_"]').parents()
.nextAll('span')
.text('')
.after('<a id="dialogtrigger" href="/*****" target="_blank">Items Eligable for Quick Order</a>' );