1

免责声明:是的,我知道这个 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标签“关联计算机”之间的字符串。

我尝试过使用 jQueryfindnextAPI,但它没有像我预期的那样工作。

我试过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);
    });     
});

我有一种我不理解findnext正确的感觉,但不知道为什么。

4

2 回答 2

2

您可以使用 .html()。

$('#maroon').html()

返回

Associated Computer(s)
于 2013-11-07T19:06:11.130 回答
1

找到它的最简单方法是:

var myHeader_next = $(this).closest("tr").find("font");

这将沿着 DOM 更改进行,直到找到第一个祖先<tr>,然后.find("font")找到标签后代<font>中的所有标签。<tr>

那时,您应该拥有<font>您正在寻找并且.text()可以工作的正确元素。

于 2013-11-07T19:07:56.140 回答