我正在尝试将包含无效字段的第一个选项卡集中在表单提交上。我确实设法专注于第一个输入字段,但如果该字段位于另一个选项卡中,它就不起作用而且我不知道如何使它起作用。
这是我的html文件:
<uib-tabset justified="true">
<uib-tab heading="{{ 'PERSONAL_INFORMATION' | translate }}">
inputs...
</uib-tab>
<uib-tab heading="{{ 'BANK_ACCOUNTS' | translate }}">
inputs...
</uib-tab>
<uib-tab heading="{{ 'CONNECTIVITY' | translate }}">
inputs...
</uib-tab>
</uib-tabset>
专注于第一个无效输入的指令:
app.directive('focus', function() {
return {
restrict : 'A',
link : function(scope, elem) {
// set up event handler on the form element
elem.on('submit', function() {
// find the first invalid element
var firstInvalid = elem[0].querySelector('.ng-invalid');
// if we find one, set focus
if (firstInvalid) {
firstInvalid.focus();
}
});
}
};
});
我将不胜感激任何帮助。