Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取对具有特定值的元素的引用_Javascript_Jquery - Fatal编程技术网

Javascript 获取对具有特定值的元素的引用

Javascript 获取对具有特定值的元素的引用,javascript,jquery,Javascript,Jquery,我想使用jQueryCSS选择器获取对具有特定文本值的elment的引用 例如: <table > <tbody> <tr> <td> <i>MYVAL</i> <!-- I want the reference to this element--> </td> </tr> </tbody> </table> 哪种语法正确?使用此

我想使用jQueryCSS选择器获取对具有特定文本值的elment的引用

例如:

<table >
 <tbody>
  <tr>
   <td>
    <i>MYVAL</i>  <!-- I want the reference to this element-->
   </td>
  </tr>
 </tbody>
</table>
哪种语法正确?

使用此代码

$('table tr td i:contains("MYVAL")').SomeFunction()

演示:

注意这不是使用纯CSS选择器

使用.filter():


如果你问的是jQuery问题,请不要用CSS给它加上标题。文本“MYVAL”的术语不是
,而是
内容
。术语“值”用于实际具有“值”属性的
元素(等)。但这是关于css选择器的aso…@DanieleB这主要是一个jQuery问题,通常不应该在问题的标题中包含标记。问题已经有标记来指定问题所涉及的内容。您不能使用CSS选择器或jQuery选择器(甚至使用
:contains()
)根据元素的确切文本内容选择元素。您必须手动检查它的文本。这将匹配其内容中包含
MYVAL
的任何
元素,即使其内容不完全等于
MYVAL
。我不确定这是否能满足问题的要求。什么不使用纯CSS选择器?
$('table tr td i:contains("MYVAL")').SomeFunction()
function selectTextElement(text) {
    var elements = [];
    $('table tbody tr td i').each(function() {
        if (jQuery(this).text() == text) {
            elements.push(jQuery(this));
        }
    });
    return elements;
}
$('table tbody tr td i').filter(function(){return $(this).text() == "MYVAL"}).SomeFunction();