【问题标题】:Webdriver cssSelector of element with quotes inside of value值内带有引号的元素的Webdriver cssSelector
【发布时间】:2013-10-30 23:00:12
【问题描述】:

我不知道如何在我的 WebDriver 测试中通过 cssSelector 选择元素。

感谢您帮助解决这个问题。

根据 webdriver css 选择器语法,它必须类似于

WebDriver.findElement(By.cssSelector("a[ng-click='session='my_portcalls'']"))

但它不起作用。

【问题讨论】:

    标签: angularjs webdriver css-selectors


    【解决方案1】:

    我在使用 Protractor/WebDriverJS 时遇到了类似的障碍。

    对我有用的是:

    元素(by.css('[ng-click="changePanel(\'delete\')"]'));

    在 html 中,元素如下所示:

    .... ng-click="changePanel('delete')" ...

    所以单次转义有效!

    【讨论】:

      【解决方案2】:

      您需要对属性值内的单引号进行转义才能使选择器有效:

      WebDriver.findElement(By.cssSelector("a[ng-click='session=\\'my_portcalls\\'']"))
      

      【讨论】:

      • 要转义 ' 字符,您只需要一个 \ 字符。这就是我记得的方式。
      • @Gabriel Porumb:是的,额外的 \ 用于转义整个选择器字符串中的第一个 \(包括 a)。
      猜你喜欢
      • 2016-02-29
      • 1970-01-01
      • 2014-11-12
      • 1970-01-01
      • 2011-12-14
      • 1970-01-01
      • 1970-01-01
      • 2013-07-24
      • 2013-10-24
      相关资源
      最近更新 更多