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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从带有从ng-model填充的文本的角元素中获取文本相关的知识,希望对你有一定的参考价值。

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

使用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="">

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

答案

要清除输入文本,可以使用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')
另一答案

试试这个:

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

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

另一答案

尝试下面的一个

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();

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

以上是关于如何从带有从ng-model填充的文本的角元素中获取文本的主要内容,如果未能解决你的问题,请参考以下文章

使用 ng-model 进行 ng-checked 的单选按钮

在输入中过滤 ng-model

如何将从服务接收到的 json 数据传递到 Angular 4 的角材料组件中的数组

从 Wikipedia 获取随机摘录(Javascript,仅限客户端)

从 Angular 2 上的查询参数中预填充输入文本框

如何在 Photoshop 中测量/转换 CSS 文本边距/填充?