【问题标题】:How to click on multiple elements having same class name in protractor angular?如何在量角器角度单击具有相同类名的多个元素?
【发布时间】:2015-07-28 23:06:23
【问题描述】:

第一个元素html代码:

<div class="block ng-scope" ng-repeat="skills in data.primary_skills">
                    <div class="block skillsLineItem" ng-class="{manditorySkillsLineItem:skills.mandatory, skillsLineItem:!skills.mandatory}"> 

 <label title="Testing" class="skill-name col-xs-5 text-overflow-ellipsis ng-binding" ng-click="toggleMandatory(skills)">
                              <!-- ngIf: skills.mandatory -->
                              <!-- ngIf: skills.userdefined -->
                              &nbsp;Testing
                            </label>

第二个元素Html代码

<label title="Test Scripts" class="skill-name col-xs-5 text-overflow-ellipsis ng-binding" ng-click="toggleMandatory(skills)">
                          <!-- ngIf: skills.mandatory -->
                          <!-- ngIf: skills.userdefined -->
                          &nbsp;Test Scripts
                        </label>

在我们的应用程序中,多个元素具有相同的类名和 ng-click 值,那么我如何使用相同的类或 ng-click 值单击多个元素。我必须点击这两个元素,所以请帮助我。

【问题讨论】:

    标签: javascript angularjs selenium selenium-webdriver protractor


    【解决方案1】:

    您可以找到所有这些并使用each()

    element.all(by.css("label[ng-click*=toggleMandatory]")).each(function (label) {
        label.click();
    });
    

    您可以使用filter() 仅过滤掉必要的元素:

    element.all(by.css("label[ng-click*=toggleMandatory]")).filter(function (label, index) {
        return index <= 5;
    }).each(function (label) {
        label.click();
    });
    

    【讨论】:

    • 我不能使用职称,因为技能名称将根据职位描述生成。
    • @raghavendrat 好的,现在怎么样?
    • 使用类或 ng-click 我必须这样做,请帮我“alecxe”。
    • 是的,它工作得很好,但它正在选择所有元素,我只想点击 6 个元素..请帮助我
    猜你喜欢
    • 2018-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-03
    相关资源
    最近更新 更多