我有一个带有三个输入的表单,其中最后一个具有readonly
属性,因此缺少焦点,因为用户填写最后一个输入的方式是单击某些按钮,如虚拟键盘。所以一切正常。但我试图按enter
并提交表单,但由于我在第二次输入后失去了焦点,我的提交无法正常工作。我该如何解决这个问题?
form.html
<form name="myForm"
role="form"
ng-submit="signin()"
novalidate>
<input type="text" name="input1"/>
<input type="text" name="input2"/>
<div ng-controller="mycontroller">
<span ng-click="fillInput3()">A</span>
<span ng-click="fillInput3()">B</span>
<span ng-click="fillInput3()">C</span>
</div>
<input type="text" name="input3" readonly=""/>
<button type="submit">Ok</button>
</form>
答案 0 :(得分:1)
试试这个,
为您的按钮指定一个ID,
<button type="submit" id="submitButton">Ok</button>
在您的控制器中,插入$window
作为依赖项,
app.controller('yourController', function($scope, $window){
})
然后在fillInput3()
函数中写下这个,
var element = $window.document.getElementById("submitButton");
if(element)
element.focus();
这将集中于&#34;提交&#34;退出fillInput3()
功能时按钮。