2013-04-05 156 views
53

我需要制作一个系统,通过选择的票数来更改总价格。我创建了一些单选按钮来选择票数。其中的优点是缺省值未设置,加载时结果为空。如何设置AngularJS中单选按钮的默认值?

<input type="radio" ng-model="people" value="1" checked="checked"><label>1</label> 
<input type="radio" ng-model="people" value="2"><label>2</label> 
<input type="radio" ng-model="people" value="3"><label>3</label> 
<ul> 
    <li>{{10*people}}€</li> 
    <li>{{8*people}}€</li> 
    <li>{{30*people}}€</li> 
</ul> 

Please see my jsfiddle.

+0

想要设置什么默认值 – 2013-04-05 12:21:51

+1

旁注为任何人使用{{$ index}}获得价值,您的模型需要将初始值'1'串联起来。 – user420667 2016-12-12 03:28:32

回答

109

设置peoplengInit

<div ng-app> 
    <div ng-init="people=1" /> 
     <input type="radio" ng-model="people" value="1"><label>1</label> 
     <input type="radio" ng-model="people" value="2"><label>2</label> 
     <input type="radio" ng-model="people" value="3"><label>3</label> 
    <ul> 
     <li>{{10*people}}€</li> 
     <li>{{8*people}}€</li> 
     <li>{{30*people}}€</li> 
    </ul> 
</div> 

演示默认值:Fiddle

+0

谢谢!解决了! – WalterV 2013-04-05 12:30:02

+21

你也可以通过设置scope.people = 1在控制器内部这样做,这是http://docs.angularjs.org/api/ng.directive:ngInit – goh 2013-12-04 16:45:13

+0

@Arun中描述的建议方法,如果值有字符而不是数字。那么'ng-init'的代码是怎么样的? – 2014-11-06 09:43:05

19
<div ng-app="" ng-controller="myCntrl">  
     <input type="radio" ng-model="people" value="1"/><label>1</label> 
     <input type="radio" ng-model="people" value="2"/><label>2</label> 
     <input type="radio" ng-model="people" value="3"/><label>3</label> 
</div> 
<script> 
    function myCntrl($scope){ 
     $scope.people=1; 
    } 
</script> 
+0

在scoped上设置这样的值解决了它为了我。 – 2015-01-23 17:22:13

+0

这一个为我工作。 – luizfelippe 2016-09-13 01:51:45

9

为什么不ng-checked="true"

+11

因为它会直观地检查单选按钮,但不会像设置单击通过浏览器的单选按钮那样设置“人员”的值。 – Tristan 2016-06-20 13:27:27

+1

答案部分不是提问的好地方。对于接受的答案,评论会更好。 – shanemgrey 2016-09-26 15:25:28

+1

这帮了我一把。感谢您的帮助。 – 2017-12-19 06:44:18

-6
<input type="radio" name="gender" value="male"<%=rs.getString(6).equals("male") ? "checked='checked'": "" %>: "checked='checked'" %> >Male 
       <%=rs.getString(6).equals("male") ? "checked='checked'": "" %> 
相关问题