我正在使用来自已接受答案的指令Set focus on first invalid input in AngularJs form来完成此操作:
app.directive('accessibleForm', function () {
return {
restrict: 'A',
link: function (scope, elem) {
// set up event handler on the form element
elem.on('submit', function () {
console.log("inside focus directive");
// find the first invalid element
var firstInvalid = elem[0].querySelector('.ng-invalid');
//if we find one, set focus
if (firstInvalid) {
firstInvalid.focus();
}
});
}
};
});
只要我不使用 radios-inline,焦点就可以工作。请参考:http: //jsfiddle.net/mutharasus/mu7y4k8f/
但是,如果第一个错误恰好在 radios-inline 字段上,则焦点不起作用。请参考:http: //jsfiddle.net/mutharasus/00jzbL6g/
我不知道如何解决。请帮忙。