如何在Angular中获取复选框项的值

时间:2013-10-07 18:38:17

标签: javascript angularjs

我有三个复选框项

<input type="checkbox" name="my_list" value="val 1">
<input type="checkbox" name="my_list" value="val 2">
<input type="checkbox" name="my_list" value="val 3">

当我点击一个方框时,我希望能够以角度方式做什么,例如“val 2”

my_list.value    // yields 'val 2'
my_list.checked  // yields true or false depending on if it's checked or not

问题在于

 my_list.value

返回true或false,这不是我想要的。我想让它返回'value'属性中的内容。

3 个答案:

答案 0 :(得分:1)

复选框是一个多选输入,因此每个选项都应该有自己的名称(或者更确切地说:ng-model)。如果您想要单选输入,请使用无线电

<input type="radio" ng-model="value" value="val 1" />
<input type="radio" ng-model="value" value="val 2" />

现在,根据选择,{{value}}将被评估为val 1val 2

答案 1 :(得分:1)

你可以这样使用ng-true-value

<input type="checkbox" name="my_list" ng-model="my_list" ng-true-value="val 1">
<input type="checkbox" name="my_list" ng-model="my_list" ng-true-value="val 2">
<input type="checkbox" name="my_list" ng-model="my_list" ng-true-value="val 3">    
如果没有选中任何内容,

{{my_list}}将为空,如果选中第一个复选框,则显示“val 1”等。

答案 2 :(得分:0)

谢谢你们,但我自己解决了。

我使用这样的复选框:

 <input type="checkbox" name="Added Items" ng-change="checkbox_change('my_list1', 'val 1')" ng-model="my_list1" value="val 1">

参数指定   1.访问哪种模式。   2.复选框的值。

然后我使用此功能

      $scope.checkbox_change = function(key, val) {
        alert($scope[key]);
        alert(val);
      }

这使我可以访问模型和复选框的值。