如何根据内容选择元素?

时间:2010-01-08 14:57:20

标签: jquery html

我需要能够选择具有特定内容的元素(innerHTML)。

e.g。我有一些锚点,每个都有一个数字作为文本。如何选择带有“1”作为文本的锚点?

我试过这个

$('a[innerHTML="1"]')

这似乎适用于IE,但不适用于ff或chrome!

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

尝试$(“a:contains('1')”)

EDIT =>这将仅使用1警告锚的文本,如果没有找到,则仅为null。

alert(FindLink($("a:contains('1')"), "1"));

function FindLink(element, textToFind) {
    var result = null;
    element.each(function() {
        if ($(this).text() === textToFind)
        {
            result = $(this).text();
            // you can change any attributes or css using $(this).css, etc
            // once the if statement is satisfied
        }
    });
    return result;
}

答案 2 :(得分:0)

感谢您的回复。我想出了一个解决方案:

$('.pages a').filter(function() { return $(this).text() == 1; } )

由于我正在搜索的锚点都在一个公共div中,我通过它缩小范围然后运行客户过滤器函数找到确切的元素。