这是漫长的一天,我可能会遗漏一些显而易见的事情。 。
我有一个ng-repeat
单选按钮列表,可以反映客户现场的UPS运费率(例如"隔夜"," 2天",等)。
这是标记:
<div ng-repeat="i in ShippingRates">
<div class='radio'>
<label>
<input value="{{i.Rate}}" ng-model="Cart.ShippingCharge" type="radio" name="shipping-method" ng-click="SetSelectedMethod('Other')" />{{i.ShippingMethod}} <span ng-if="i.Rate > 0">({{i.Rate | currency}})</span></label></div>
</div>
我已经从UPS返回的ng-model
关联单选按钮i.Rate
(例如100美元)。
现在,我另外需要将单选按钮的text
存储为&#34; SelectedShippingMethod&#34;。我认为这样做的方法可能是添加ng-click
这样:
<input value="{{i.Rate}}" ng-model="Cart.ShippingCharge" type="radio" name="shipping-method" ng-click="SetSelectedMethod('{{i.ShippingMethod}}')" />
然后功能就像:
$scope.SetSelectedMethod = function(method){
$scope.SelectedShippingMethod = method;
}
但这不起作用,因为它导致$scope.SelectedShippingMethod
字面上设置为"{{i.ShippingMethod}}"
。
感谢任何帮助。
答案 0 :(得分:1)
ng-click中的函数已经是JavaScript方法,而不是HTML代码段,因此您不必将变量评估为表达式。只需调用变量。
e.g。 ng-click="SetSelectedMethod(i.ShippingMethod)"