我的页面顶部有一个保存按钮,一个搜索表单,然后是我可以编辑项目的表单。它看起来像这样:
<button type="button" ng-click="save()">Save</button>
<form name="searchForm" ng-submit="search()">
<input type="text" ng-model="criteria" />
</form>
<form name="saveForm" ng-submit="save()">
<input type="text" ng-model="item.field" required />
</form>
我希望我的保存按钮提交保存表单,而不是直接调用 save()
,因此如果必填字段为空,浏览器将提示用户填写。我该如何提交通过表单外的按钮访问表单?
最佳答案
如果您想使用 HTML5 验证,我很确定您必须使用真正的提交输入,而不是 Angular 按钮。
理论上,您可以在标准提交输入上使用 HTML5“form”属性来实现此效果。请参阅https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input#attr-form 。但是,您需要仔细检查浏览器兼容性。
如果这不起作用,我怀疑您将不得不退回到将提交输入放在标记中的表单内,然后使用“聪明的”CSS 将按钮重新定位到页面上您需要的位置。
关于javascript - 以编程方式提交 Angular 表单,但仍然收到 HTML5 验证错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27712461/