为什么选择两个单选按钮时使用ng-value =" true"和价值=" 1"

时间:2016-07-18 21:03:34

标签: javascript html angularjs

我不确定为什么只要您选择其中一个,就会选中带有value="1"的按钮和带有ng-value="true"的按钮。

感谢任何评论。



<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="inputExample">
  <script>
   angular.module('inputExample', [])
     .controller('ExampleController', ['$scope', function($scope) {
       $scope.chosen = "";
     }]);
</script>
<div ng-controller="ExampleController">
  <input type="radio" ng-model="chosen" value="1"/>
  <input type="radio" ng-model="chosen" value="2"/>
  <input type="radio" ng-model="chosen" ng-value="true"/>
  <pre>{{chosen}}</pre>
</div>
</body>
&#13;
&#13;
&#13;

Plunker示例:https://plnkr.co/edit/qD6Kotx3nXrbtR4bv4Xr?p=preview

2 个答案:

答案 0 :(得分:1)

您没有给出单选按钮name属性,因此所有这三个无线电输入完全相互独立以供选择,并且可以选择所有三个。

答案 1 :(得分:0)

我怀疑原因是select top 12 u.UserID , c.CharacterID from Users u cross apply ( select top 1 CharacterID from Characters ch where ch.UserID = u.UserID order by newid() ) c order by NEWID() 在JavaScript中是正确的。例如,Angular在决定是否选择它时与单选按钮值进行松散比较。因此,选择1 == truetrue的那个也会导致选择另一个。 (浏览器不会将它们排除在外,因为你没有给它们1 [并且如果你确实给出了一个通用名称,那么行为就更加怪异了。)