AngularJS (-материал) инвалидов булевых неприятностей

0

У меня проблема,

У меня есть <md-datepicker> где вы можете выбрать дату.

У меня есть список избранных, используя

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

Когда вы выбираете дату, появляется <md-checkbox>. Поэтому я могу выбрать его. Теперь вот проблема!

(на моей странице)

Я выбираю дату, я выбираю <md-checkbox>, затем удаляю дату на <md-datepicker>. И нажмите кнопку "отправить", логическое значение все еще выполняется.

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

Кто-нибудь знает, когда отключен <md-checkbox> Я получаю ложную информацию независимо от того, выбрано ли оно yes или no. Использование чего-то из углового (-material). Или лучший способ просто использовать java-скрипт?

Если что-то непонятно, что я имею в виду, просто спросите :)

Спасибо, что уже читал это!

Теги:
angular-material

1 ответ

0
Лучший ответ

У вас уже есть логика, чтобы определить, когда включать/отключать этот флажок, поэтому почему бы не повторно использовать эту логику при отправке формы.

Например, в вашем контроллере у вас может быть что-то вроде этого:

$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>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню