我试图隐藏文字" 33可用",数字会随着购买门票而改变。我无法直接编辑文本。
<table width="100%" cellspacing="0" cellpadding="2" border="0" style="">
<tbody>
<tr bgcolor="#eeeeee">
<td colspan="2">
<input type="hidden" value="90" name="fees">
<input type="hidden" value="1992261" name="feeID">
<input type="hidden" value="Shirt,X-Small, Small, Medium, Large, X-Large, R" name="shirtSizeArray">
<input type="hidden" value="0" name="setdiscountflag">
<b>Runner</b>: $90.00<br>Run on the Upper Valley Haven's Covered Bridges Half Marathon team!<br>33 available
<input type="hidden" value="Shirt,X-Small, Small, Medium, Large, X-Large, R" name="shirtsize1992261"><input type="hidden" value="" name="setGoalAmt">
</td>
</tr>
</tbody>
</table>
我尝试了以下内容,但这将删除其他html信息:
$('form#registrationForm table tbody tr td table tbody tr td table tbody tr td table tbody tr td:contains("Run on the Upper")').html('<b>Runner:</b> $90.00<br />Run on the Uper Valley Haven\'s Covered Bridges Half Marathon team!');
我也试过使用.text,选择33可用的最佳方法是什么,只隐藏那条线?
这里有一个HTML中的小提琴http://jsfiddle.net/jelane20/76ebL7ko/1/
提前谢谢!
答案 0 :(得分:2)
将文本包装在标签中,这将使操作更容易,
$($('td br:last')[0].nextSibling).wrap('<span id="avail">');
然后使用$('#avail')
答案 1 :(得分:1)
一个简单的选择是使用<span>
标记围绕'33 available',如下所示:
<span id='available'>33 available</span>
编辑:您可以使用以下代码执行此操作:
$('td').contents().filter(function()
{
return this.nodeType==3 && this.nodeValue.trim();
}).last().wrap('<span id="available">');
这是获取最后一个文本节点,该节点具有非空格字符并将其包装在一个范围内。 现在您只能访问该文本并隐藏它:
$('#available').hide();