Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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
Jquery 单击html元素,该元素中有特定的文本_Jquery_Html_Cucumber_Capybara - Fatal编程技术网

Jquery 单击html元素,该元素中有特定的文本

Jquery 单击html元素,该元素中有特定的文本,jquery,html,cucumber,capybara,Jquery,Html,Cucumber,Capybara,我在html中有多个标签元素,如下所示 <label class="article-list"> first </label> <label class="article-list"> secound </label> <label class="article-list"> Idividual </label> 第一 secound 个人的 在场景中,我有这样的东西;用户单击“第一”选项 现在

我在html中有多个标签元素,如下所示

<label class="article-list">
    first
</label>
<label class="article-list">
    secound
</label>
<label class="article-list">
    Idividual
</label>

第一
secound
个人的
在场景中,我有这样的东西;用户单击“第一”选项

现在我需要点击label元素,其中包含文本“first”。我该怎么做

我知道如何使用类和其他内容获取元素,但不是这样。

您可以使用给定文本获取元素

$('label').click(function(){
   alert(this.className); 
});

$('label:contains(first)').click();

说明:选择包含指定文本的所有元素。

查找元素时,可以使用
:text
选项指定元素的文本

要单击“第一个”标签:

要单击“secound”标签:

当然,Cucumber步骤希望传递指定的文本:

当/User单击“([^”]+)”选项/do |选项时|
查找('label.article list',:text=>选项)。单击
结束

我可以在cucumber?和(/^User click“([^”]*)选项$/)do | arg |$('label:contains(arg'))中使用JQuery。触发器('click')结束是否很好?作为旁注,最好使用另一个标记。我看不到在这里使用
的附加值……这是我得到的结构,我无法更改它
find('label.article-list', :text => 'first').click
find('label.article-list', :text => 'secound').click