ng-repeat角度js中的复选框绑定

时间:2016-07-28 11:34:47

标签: angularjs angularjs-ng-repeat

https://jsfiddle.net/bngk/7urrobaa/

 <div ng-repeat="item in items" ng-init="item.showCb = item.value == 'true' || item.value == 'false'">

<input type="checkbox" ng-if="item.showCb" ng-true-value="true" ng-false-value="false" ng-model="item.value" ng-checked="item.value == 'true'">{{items[$index].value}}</input>
    <input type="text" ng-if="!item.showCb"  ng-model="item.value"/>
  </div>

我在绑定ng-repeat中的复选框时遇到问题,如果我在默认情况下检查的值很少,而且模型中的值没有正确更新,并且默认情况下都没有检查,则它可以工作,但值会更新虽然我提到ng-true-value =“true”和ng-false-value =“false”作为字符串,但它保留了布尔值。我希望字符串值出现在模型中。请检查我的小提琴。感谢您的支持。

1 个答案:

答案 0 :(得分:2)

如果您查看文档:{​​{3}},您可以看到ng - * - value接受表达式。因此,如果您只是放置ng-true-value="true",它会将true视为表达式。

如果你放ng-true-value=" 'true' ",那么就知道它是一个字符串。

但如上所述,您的代码中还有其他一些错误。