2015-07-07 4 views
0

У меня есть флажок, который необходимо проверить, только если свойство является ложным. У меня есть следующий HTML:ng-checked не работает по ng-change и ng-model

<input type="checkbox" ng-model="list.IsProject" ng-checked="list.IsProject==false" name="IsProject" id="IsProject" ng-change="saveItem(list, 'IsProject')"> Not Shared 

После проверки/убрав мне нужно обновить базу данных, и это не имеет ожидаемое поведение. В принципе, если IsProject имеет значение false, его необходимо проверить. Если получает флажок, значение IsProject должно стать 1.

+0

взглянуть на это ТАК размещать http://stackoverflow.com/questions/16601018/angularjs-ng-model-not-binding-to-ng-checked-for-checkboxes ngChecked и ngModel не означает, работать вместе. – Jax

+1

Я уже видел это сообщение, но, к сожалению, это решение не работает для меня – Cristina

+0

Пожалуйста, добавьте html вместе с JS –

ответ

0

Я думаю, вам придется использовать два различных свойства для этого ... Так изменить ng-model="list.IsProject" ng-checked="list.IsProject==false" что-то вроде этого

ng-model="list.IsProject" ng-checked="list.IsProject_2==false"

+0

Благодарим за отзыв. Я тоже думал об этом решении, но это требует изменений в модели, и, поскольку модель немного сложна, я думал, что может быть более простой способ – Cristina

1

I решил проблему, поэтому я опубликую здесь решение. Поскольку я не хотел модифицировать модель, я использовал другую переменную (как Дэвид предложил) по имени NotShared и передал ее в ng-модель, а затем в качестве параметра функции из ng-change. Я пробовал, не передавая его в качестве параметра, но значение не обновлялось должным образом. Все еще не знаю почему.

<input type="checkbox" ng-model="NotShared" name="IsProject" id="IsProject" ng-change="saveItem(list, 'IsProject', NotShared)"> Not Shared 

 Смежные вопросы

  • Нет связанных вопросов^_^