使用javascript填充角度输入

使用javascript填充角度输入,javascript,angularjs,Javascript,Angularjs,设置元素的值无效。它不像用户键入。当我提交这个输入时,弹出窗口告诉我我根本没有填写输入。如何像用户一样填充此输入元素 <div class="login-input input-group" data-ng-class="{'invalid' : !valid}"> <input id="alias-input" type="text" class="form-control ng-pristine ng-valid ng-empty ng-valid-maxlength ng

设置元素的
无效。它不像用户键入。当我提交这个输入时,弹出窗口告诉我我根本没有填写输入。如何像用户一样填充此输入元素

<div class="login-input input-group" data-ng-class="{'invalid' : !valid}">
<input id="alias-input" type="text" class="form-control ng-pristine ng-valid ng-empty ng-valid-maxlength ng-touched" tabindex="1" data-ng-model="formData.alias" data-ng-keydown="sendAlias($event)" maxlength="10" data-gemius-event="click" data-gemius-parameters="['place=login','inputbox=login','met=onclick']"
    spellcheck="false">
</div>

我试过:

angular.element(document.querySelector(“别名输入”)).val(“foo”)


document.getElementById('alias-input')。value='foo'

您可以在html中为输入元素设置ng模型属性,如:ng model=“inputValue”。在该视图的控制器中,在注入$scope之后,现在可以设置$scope.inputValue=“foo”,它将自动更新输入值


希望能有所帮助。

这就是我的工作原理:

const-event=new事件('input',{bubbles:true});
document.querySelectorAll('[formcontrolname=“idNumber”]')[0]。值='123456789';
document.querySelectorAll('[formcontrolname=“idNumber”]')[0].dispatchEvent(事件);

这是在Ionic 3.9.2和Angular 5.0.3的页面上测试的,我不是这个网站的开发者。我想创建自动测试,但填写此输入时遇到问题。您使用什么来添加测试?有框架吗?@xyz我在用Watin@Chellappan这是他说的angularjs。因此,指向此文档的链接是不相关的,它是错误的框架。@Dafie您的问题是数据ng模型会覆盖您在摘要周期中对值所做的任何更改。因此,您需要在任何摘要周期结束后设置该值,或者如果您可以保证最后一个摘要周期已经发生,请更改该值。谢谢,这在类似问题上帮助了我。在未调用dispatchEvent的情况下设置该值不允许保存表单。