为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery:逐文本查找元素

jQuery:逐文本查找元素

偶然的你 2019-07-02 10:02:55
jQuery:逐文本查找元素有谁能告诉我是否有可能根据其内容而不是通过ID或班级,等级?我试图找到没有不同类或id的元素。(然后我需要找到该元素的父元素。)
查看完整描述

3 回答

?
不负相思意

TA贡献1777条经验 获得超10个赞

在jQuery文档中,它说:

匹配的文本可以直接出现在所选元素中、在该元素的任何子元素中,也可以出现在该元素的组合中。

因此,仅仅使用:contains() 选择器,您还需要检查搜索的文本是否是直接含量对于您所针对的元素,如下所示:

function findElementByText(text) {
    var jSpot = $("b:contains(" + text + ")")
                .filter(function() { return $(this).children().length === 0;})
                .parent();  // because you asked the parent of that element

    return jSpot;}


查看完整回答
反对 回复 2019-07-02
?
慕侠2389804

TA贡献1719条经验 获得超6个赞

伙计们,我知道这是旧的,但是我有一个解决方案,我认为它比所有的都更有效。首先,也是最重要的是克服了jQuery:include()附带的区分大小写的问题:

var text = "text";var search = $( "ul li label" ).filter( function (){
    return $( this ).text().toLowerCase().indexOf( text.toLowerCase() ) >= 0;}).first();
     // Returns the first element that matches the text. You can return the last one with .last()

希望在不久的将来有人会发现这有帮助。


查看完整回答
反对 回复 2019-07-02
  • 3 回答
  • 0 关注
  • 508 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信