我正在使用AngularJS并且有一个表单,如果某些字段未填写,我希望禁用“提交”按钮。
标准方式似乎如下:
<form ng-app name="myForm">
<label>Name</label>
<input type="text" name="name" ng-model="form.name" required>
<input type="submit" ng-disabled="myForm.name.$invalid">
</form>
但是,如果我从输入字段中省略模型,则验证不起作用,我的输入字段上不需要任何模型(我使用ngUpload指令提交表单,因此实际上它已发送到表单操作中一个iframe)。
是否有任何解决方案或是否应该添加随机模型以使验证工作?这似乎是一个糟糕的解决方法。
答案 0 :(得分:3)
您可以在表单级别执行invalid
检查,然后无需为每个输入定义模型:
<form ng-app name="myForm">
<label>Name</label>
<input type="text" name="name" required>
<input type="submit" ng-disabled="myForm.$invalid">
</form>
答案 1 :(得分:0)
您在测试输入标记处缺少模型:ng-model =“form.name”