如果ng-checked为true,则Angular复选框首次单击不执行任何操作

时间:2016-01-15 01:36:34

标签: javascript angularjs

所以,这似乎是一个新问题。这是一个plunkr http://plnkr.co/edit/r9xWht5DZtOTvbblXwYZ

2016/01/14 14:27:04 go-app-builder: build timing: 18×6g (1.819s total), 0×6l (0 total)
2016/01/14 14:27:04 go-app-builder: failed running 6g: exit status 1

github.com/golang/protobuf/protoc-gen-go/testdata/my_test/test.pb.go:27: can't find import: "github.com/golang/protobuf/protoc-gen-go/testdata/multi"

基本上我在我设置范围的db中有一个布尔值,它在db中是1或0。如果是,则选中复选框,如果不是,则不是。我遇到的问题是,如果选中它,第一次取消选中该框,范围不会改变。当我单击它(再次检查)时,范围值变为true,然后它按预期工作。

同样,我必须在这里忽略一些微不足道的事情。我正在研究$ scope。$ watch我应该使用它吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

而不是ng-checked,您可以改为使用ng-true-value and ng-false-value

请参阅plunker

<input id="reviews"  ng-model="reviews" type="checkbox" ng-true-value="1" ng-false-value="0" />

答案 1 :(得分:1)

您的问题是ng-model$(document).ready(function(){ $("#button").click(function(){ var toAdd = $("input[name=checkListItem]").clone().appendTo( ".list" );; }) }); 一起使用。 documentation说:

  

请注意,此指令不应与ngModel一起使用   这可能会导致意外行为。

两者都试图设置输入字段的值,这会导致您遇到的奇怪结果。