[英]jQuery find text between tags
免责声明:是的,我知道这个HTML的混乱。 它来自遗留应用程序。 不幸的是,更改HTML不是一种选择,因为它是一个包含许多依赖项的大页面。
那就是说,我有以下代码:
<tr>
<th align="left" style="background:#CCCCCC;" nowrap="">
<a class="ContentLink addLink" id="content">
<img border="0" src="/tools/images/buttons/restore.gif" alt="edit (popup)">Add
</a>
</th>
<th colspan="3" nowrap="" width="100%">
<font id="maroon">Associated Computer(s)</font>
</th>
</tr>
使用jQuery,我想得到font
标签“Associated Computer(s)”之间的字符串。
我已经尝试过使用jQuery的find
和next
API,但它没有像我预期的那样工作。
我试过var myHeader_next = $(this).find("font");
它返回一个对象。 当我使用var myHeader_trim = $.trim(myHeader_next);
,我得到[object Object]
。
我试过var myHeader_next = $(this).find("font").text();
和var myHeader_trim = $.trim(myHeader_next);
对于两者,我得到了空白的答复。
$(document).ready(function () {
$(".addLink").click(function(){
var SR_ID = $("#SR_ID").val();
var myHeader_next = $(this).find("font").text();
var myHeader_trim = $.trim(myHeader_next);
console.log(myHeader_next);
console.log(myHeader_trim);
});
});
我有一种感觉,我不理解find
和next
正确,但不知道为什么。
你可以使用.html()。
$('#maroon').html()
回报
Associated Computer(s)
找到它的最简单方法是:
var myHeader_next = $(this).closest("tr").find("font");
这将在DOM更改中向上移动,直到找到第一个祖先<tr>
,然后.find("font")
找到<tr>
标记后代中的所有<font>
标记。
此时,您应该具有正在查找的正确<font>
元素,并且.text()
将起作用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.