我有以下HTML代码
<td id="td_ccs[79]" class="right"> <a id="btn_c[79]" class="button" name="ccs_button" rel="yes">YES</a>
</td>
我只是试图使用jquery来读取和重写单元格中的链接。这就是我所拥有的
alert($('#td_ccs[79]').html());
$('#td_ccs[79]').html('new html code'))
但它一直告诉我我的细胞是空的。这是因为它是一张桌而不是div?
答案 0 :(得分:3)
使用任何元字符(例如!“#$%&amp;'()* +,。/:;&lt; =&gt;?@ [] ^`{|}〜)作为文字作为名称的一部分,必须使用两个反斜杠进行转义:\\。
所以使用
alert($('#td_ccs\\[79\\]').html());
要逃生,您可以创建一个功能并像
一样使用它var escapeMetaChars = function (text) {
return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
}
alert($('#' + escapeMetaChars('td_ccs[79]')).html());
答案 1 :(得分:2)
您需要转义方括号,因为它们通常用于指定属性选择器。
alert($('#td_ccs\\[79\\]').html());