【问题标题】:Clicking Specific CasperJS Button Not Working单击特定的 CasperJS 按钮不起作用
【发布时间】:2018-03-16 10:05:06
【问题描述】:

我在长脚本中多次使用以下代码:

this.click("<selector>");

但是有一个页面不起作用,我不明白为什么。

HTML 是:

<div class="bottom-row">
 <div class="actions-primary">                                                                                                                                                                                
   <button class="add-subscription button middle" id="2">Choose</button>
 </div>
</div>

所以我正在使用:

casper.waitUntilVisible('#products_screen',
    function success() {
        casper.test.pass('Product List Show');
        this.echo(this.getHTML('.actions-primary'));
        //this.click("button#2.add-subscription.button.middle");
        this.click("#2");
    },
    function fail() {
        casper.test.fail('List of Products not showing');
    },
50000);

我尝试了所有可能的选择器,但没有成功。

另外,如果我在 Chrome 中尝试使用 Resurrectio,它不会记录点击。

欢迎任何解决方法。

解决方案更新:

this.click('[id="2"]');

【问题讨论】:

    标签: javascript phantomjs automated-tests casperjs


    【解决方案1】:

    我使用 css 选择器格式解决它:

    this.click('[id="2"]');
    

    【讨论】:

      【解决方案2】:

      如果id 是数字,则必须根据 Unicode 代码点对数字进行转义,或使用属性选择器。

      以下两种解决方案都可以:

      this.click('#\\32 ');    // Escaped based on Unicode code point
      this.click('[id="2"]');  // Attribute selector
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-04-05
        • 2015-02-06
        • 2018-05-02
        • 2016-06-07
        相关资源
        最近更新 更多