如何获取包装器的id或类的字符串

时间:2011-06-19 17:14:47

标签: javascript string tags

<span id="myId" class="myClass">Sample text</span>

我想通过使用文本值获取html页面中特定字符串的id或类,在本例中为“示例文本”。有办法吗?

1 个答案:

答案 0 :(得分:2)

使用jQuery,非常简单:

var searchText = 'Sample text',
    $element = $('span:contains(' + searchText ')'),
    id = $element.attr('id'),
    className = $element.attr('class');

严格的香草JS并不那么简洁。

var spans = document.getElementsByTagName('span'),
    element,
    text,
    re = /Sample Text/,
    // IE doesn't support textContent, FF doesn't support innerText
    prop = document.body.innerText ? 'innerText' : 'textContent'; 

for (var i=0; i<spans.length; i++)
{
    if (re.test(spans[i][prop]))
    {
        span = spans[i];
        break;
    }
}

var id, className;
if (span)
{
    id = span.id;
    className = span.className;
}