我在模板中包含以下ngForm,我将其作为打开NgbModal的参数传递给了
<form #optionsForm="ngForm" noValidate (ngSubmit)="saveOptions()" id="optionsForm">
<div class="modal-body">
<div class="form-group">
<label for="customFile">Icon</label>
<div class="custom-file">
<input type="file" class="custom-file-input" id="customFile">
<label class="custom-file-label" for="customFile">Select icon</label>
</div>
</div>
// more will come
<button type="submit" class="btn btn-secondary pieChart" aria-hidden="true" [disabled]="!optionsForm.valid">
<i class="fa fa-floppy-o"></i> Save
</button>
</div>
</form>
每当我打开NgbModal时,焦点就会设置在第一个输入元素上,如下所示:
打开表单后,我不希望任何元素被聚焦,请按Tab键,然后应聚焦第一个元素。每次打开表单时,是否有任何方法可以从tabIndex=-1
开始?
答案 0 :(得分:0)
也许可以看成是骇客(?),但似乎可以正常工作...
有ngbAutofocus
覆盖了专注于第一个元素的行为。例如,将其添加到表单标签似乎可以解决此问题:
<form .... ngbAutofocus>