如果Ng-disabled为TRUE,则Angular JS不会通过

时间:2014-05-06 06:04:54

标签: javascript angularjs

我有类似

的东西
<input type='text' ng-model='SampleDTO'>

<input type='text' ng-model='SampleDTO2' ng-disabled='SampleDTO == null'>

我发生的是第一次输入第二个输入的值,然后我删除了第一个输入的值,因此禁用了第二个输入。当我将值传递给控制器​​时,还包括禁用的字段。如何防止禁用字段传递给控制器​​?

3 个答案:

答案 0 :(得分:1)

尝试这种方式:

<input type='text' ng-model='SampleDTO2' ng-if='SampleDTO != null'>

在这种情况下,此字段将消失(取决于条件),模型将不会绑定到它

答案 1 :(得分:0)

如果要显示已禁用的文本字段。试试这种方式

<input type='text' ng-model='SampleDTO'>

<input type='text'  ng-disabled='SampleDTO == null' ng-if='SampleDTO == null'>

<input type='text' ng-model='SampleDTO2' ng-if='SampleDTO != null'>

通过这种方式,UI将是一个禁用的文本框,没有附加范围。

希望它有所帮助!

答案 2 :(得分:0)

您可以添加ng-hide用于以下相同目的:  

<input type='text'  ng-disabled='SampleDTO == null' ng-model='SampleDTO2' ng-hide='SampleDTO == null' >