正如在HTML表单中所述,将阻止所有已禁用的表单文件在表单提交上提交。
在Angular JS中,如果我对输入字段使用了ng-disable,那么如果我这样做,那么该字段是否真的被提交
<form>
<input type="text" ng-disabled="true" name="foo">
<button type="submit">submit</button>
</form>
如果不是为什么?在这个问题上感觉很傻但有点混淆
答案 0 :(得分:0)
如果disabled
的值为真值,则库会在元素上设置布尔ng-disabled
属性。我相信official documentation在这个问题上非常明确。我提到的部分:
HTML规范不要求浏览器保留布尔属性的值,例如disabled。 (它们的存在意味着真实,它们的缺失意味着错误。)如果我们将Angular插值表达式放入这样的属性中,那么当浏览器删除属性时绑定信息将会丢失。 ngDisabled指令解决了disabled属性的此问题。浏览器不会删除此补充指令,因此提供了存储绑定信息的永久可靠位置。
答案 1 :(得分:0)
你的例子
<form>
<input type="text" ng-disabled="true" name="foo">
<button type="submit">submit</button>
</form>
您要将ng-disabled
设置为true
,以便在表单中添加disabled
属性,如果您提交表单,如HTML表单中所述,将阻止所有已禁用的表单文件从提交表格提交,所以
使用普通表单提交,即以html方式type="submit"
,如果ng-disabled
中的值设置为false或返回false,则输入值将仅通过表单发布。
ng-submit
中的会发生同样的事情,即表单只是在提交表单后可以调用方法。