javascript - 使用 ng true 和 ng false 时,Angular ng 模型需要点击 2 次

标签 javascript angularjs

我正在使用带有 ng 模型、ng-true-value 和 ng-false-value 的复选框。 它工作正常,但是当它的值变为 1 并且默认选中时,需要单击 2 次才能更改该值。

有什么方法可以通过第一次点击来做到这一点

代码示例:

<input type="checkbox" ng-checked="CreateUpdateCat.IsDiscussionAllowed=='1'" ng-model="CreateUpdateCat.IsDiscussionAllowed" ng-true-value="1" ng-false-value="2" >

Controller 代码:

angular.forEach($scope.CategoryData,function(v,k){
                        if(v.id == id)
                        {
$scope.CreateUpdateCat = {IsDiscussionAllowed:v.IsDiscussionAllowed,Name:v.Name};
};
});

这是 plunkr 网址:https://plnkr.co/edit/JApepZfvNrlqDj9vine0?p=preview 默认值为 1,但复选框未显示已选中

最佳答案

要么使用 ng-checked 要么 ng-model 否则 Angular 会感到困惑。并且您可能会得到意想不到的结果。

仅使用一个指令 ng-checkedng-model

关于javascript - 使用 ng true 和 ng false 时,Angular ng 模型需要点击 2 次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42435502/

相关文章:

javascript - 使用 .NET MVC 的 Angular 路由

javascript - chrome 是否有某种 api 可以让您控制下载

javascript - 单击 ul > li 仅在第一次有效

javascript - 我想显示所有列表项而不是一个元素

javascript - 表单中的 angularjs 复选框

javascript - 即使状态发生变化也无法加载 ui-view

javascript - jQuery .on() 是否支持 "load"或 "ready"事件?

javascript - 在 javascript 中为所有事件类型定义回调函数

angularjs - 使用 angularjs ng-options 和 ng-change 时发送选项对象

jquery - Firefox 不会将样式应用于通过 Ajax 加载的内容(使用 AngularJS)