如何从带有从ng-model填充的文本的角元素中获取文本

问题描述 投票:0回答:3

这是我想要从中获取文本的输入。

使用ng-model更新文本(我认为)。

我无法从中获取文本或清除它。

我正在使用量角器和茉莉花

<input type="text" placeholder="HH" ng-model="hours" ng-change="updateHours()"
       class="form-control text-center ng-pristine ng-valid
              ng-valid-hours ng-not-empty ng-valid-maxlength ng-touched"
       ng-readonly="::readonlyInput" maxlength="2" tabindex="1"
       ng-disabled="noIncrementHours()" ng-blur="blur()"
       autocomplete="off" style="">

有没有办法获取文本或清除文件,以便我可以自己输入一些值。

javascript angularjs protractor
3个回答
0
投票

要清除输入文本,可以使用clear()函数,例如:

input=element(by.css('input.form-control.text-center.ng-pristine.ng-valid.ng-valid-hours.ng-not-empty.ng-valid-maxlength.ng-touched'));


input.clear();

如果要在字段中输入文本:

input.sendKeys('my input')

0
投票

试试这个:

var input = element(by.model('hours'));
var val = input.getAttribute('value');
input.clear();

但我想指出属性ng-readonly="::readonlyInput",如果readonlyInput在组件中为真,则无法使用clear。并在getTextgetAttribute执行之前检查输入是否填充了值。


0
投票

尝试下面的一个

var input = element(by.css('input.form-control.text-center.ng-pristine.ng-valid.ng-valid-hours.ng-not-empty.ng-valid-maxlength.ng-touched'));
//To enable the field click on it before getting the text
input.click();
//To get the text i.e: inner html of the element
input.getText();
//To clear the field
input.clear();

希望它能帮到你......

© www.soinside.com 2019 - 2024. All rights reserved.