AngularJS (-material) ng-disabled boolean 麻烦

AngularJS (-material) ng-disabled boolean trouble

我有问题,

我有一个<md-datepicker>,你可以select约会。

我有一个 select 列表使用

<md-checkbox ng-disabled="!formName.something.stop || !formName.something.start" ng-init="formName.something.action=false"> Action <md-checkbox>

当您 select 一个 <md-checkbox> 可用的日期。这样我就可以select了。问题来了!

(在我的页面上)

我select一个日期,我select一个<md-checkbox>,然后我去掉<md-datepicker>上的日期。然后按下 'send' 按钮,布尔值仍然成立。

Object {start: undefined, stop: undefined, action: true, item: false, broadcast: false…}

有人知道禁用 <md-checkbox> 的方法吗,无论 select 是或否,我都会得到一个错误的回复。使用 angular(-material) 中的内容。还是仅使用 java-script 的最佳方式?

如果有什么不明白我的意思,尽管问:)

感谢您阅读本文!

您已经有了确定何时 enable/disable 复选框的逻辑,那么为什么不在发送表单时重新使用该逻辑。

例如,在你的控制器中,你可以有这样的东西:

$scope.checkBoxDisabled = checkboxIsDisabled();

function checkboxIsDisabled () {
    return !formName.something.stop || !formName.something.start;
}

//Then, on form submit, just check again:
var formSubmitCheckDisabled = checkboxIsDisabled():

在您看来,只需引用您创建的变量:

<md-checkbox ng-disabled="checkBoxDisabled" ng-init="formName.something.action=false"> Action <md-checkbox>