2014-01-23 235 views
1

转义特殊字符-时出现问题。下面是HTML代码片段:Watir:转义特殊字符

<input class="form-control dob ng-pristine ng-valid" type="text" readonly="readonly" data-date-format="mm/dd/yy" ng-model="pollObj.poll_question.start_time" datepicker=""></input> 

<span></span> 

<input class="form-control dob ng-pristine ng-valid" type="text" readonly="readonly" data-date-format="mm/dd/yy" ng-model="pollObj.poll_question.end_time" datepicker=""></input> 

我使用watir web driver选择从日期选择器的日期。

因此,如果我不得不点击上面的html代码片段中的第一个输入,唯一可以区分的是ng-model的值。因此,我认为写这样的:

browser.input(:ng-model="pollObj.poll_question.start_time").when_present.click 

在上面的代码,我需要在ng-model逃脱-。使用反斜杠没有帮助。

有人可以帮忙吗?

回答

1

ng-model不是标准属性,因此Watir-Webdriver不直接支持该属性作为定位符。

一种选择是使用CSS选择器:

browser.element(:css=> 'input[ng-model="pollObj.poll_question.start_time"]').when_present.click 

或者你可以使用XPath:

browser.input(:xpath => './/input[@ng-model="pollObj.poll_question.start_time"]').when_present.click