javascript - AngularJs。是否可以通过单击取消选择 HTML “radio” 输入?

标签 javascript angularjs radio-button

我有 radio 输入,如果选中当前 radio ,我想通过单击 radio 来检查状态。

这段代码:

<input type="radio" id="average_0" name="average" ng-model="checked" ng-change="false" value="500" class="ng-valid ng-dirty">
<input type="radio" id="average_1" name="average" ng-model="checked" ng-change="false" value="1000" class="ng-valid ng-dirty">
<input type="radio" id="average_2" name="average" ng-model="checked" ng-change="false" value="1500" class="ng-valid ng-dirty">

不工作。

fiddle :http://jsfiddle.net/Zoomer/8s4m2e5e/

最佳答案

单选按钮一次只能选择一个,一旦选中,用户就不能取消选中(除非您以编程方式执行)。所以如果你想在它当前选中时取消选中它,你可以这样做:

<input type="radio" ng-model="checked" value="500" ng-click="uncheck($event)" />
<input type="radio" ng-model="checked" value="1000" ng-click="uncheck($event)" />
<input type="radio" ng-model="checked" value="1500" ng-click="uncheck($event)" />

在你的 Controller 中:

$scope.uncheck = function (event) {
    if ($scope.checked == event.target.value)
        $scope.checked = false
}

演示:http://jsfiddle.net/8s4m2e5e/3/

注意:如果您真的想从多个选项中选择一个或一个都不选,您可以选择 <select>

关于javascript - AngularJs。是否可以通过单击取消选择 HTML “radio” 输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25443018/

相关文章:

javascript - 跟踪复选框状态并为 ng-model 使用多个数据

javascript - 当我们按下回车键时,按键事件不会被触发

c# - signalR、IE10 和 fiddler 的奇怪行为

javascript - 使用 Javascript 对数据库进行用户注册和身份验证

html - 如何在纯CSS中制作自定义复选框和单选按钮?

forms - Angular 5 - 禁用单选按钮

javascript - 向现有对象添加属性

javascript - Ionic、angularjs、bootstrap 3 的左侧多级菜单无法正常工作

javascript - 使用 Javascript 为数组赋值时遇到问题

javascript - 使用javascript评估表单输入单选按钮