Angularjs 设置复选框为 true
Angularjs setting checkbox to true
我正在尝试使用 Angularjs 将复选框设置为 true。现在我正在使用vanilla javascript来操纵DOM,但我想用Angularjs以正确的方式做到这一点。
以下是视图:
<div x-ng-repeat="addon in addons">
<label for="{{addon.addoncode}}">
<input type="checkbox"
name="{{addon.addoncode}}"
value="{{addon.addoncode}}"
id="{{addon.addoncode}}"
x-ng-model="addon.checked"
x-ng-click="checkAddonDependencies()" >
<span x-ng-bind-html="addon.addon_desc">{{addon.addon_desc}}</span> </label>
</div>
这是控制器的相关部分:
if (document.getElementById(dep)) {
document.getElementById(dep).checked=true;
}
dep 值等于插件代码值,所以如果存在,我选中该框。这有效并选中该框,但我如何使用范围来执行此操作?
我试过了:
x-ng-model="addon.addoncode"
跟
$scope.addon.dep = true;
但是没有运气...任何帮助表示赞赏。谢谢。
HTML
<div ng-repeat="addon in addons">
<label for="{{addon.addoncode}}">
<input type="checkbox"
name="{{addon.addoncode}}"
value="{{addon.addoncode}}"
id="{{addon.addoncode}}"
ng-model="addon.checked"
ng-click="checkAddonDependencies()" >
<span ng-bind-html="addon.addon_desc">{{addon.addon_desc}}</span> </label>
</div>
控制器
function countController( $scope, $timeout )
{
$scope.addons = [
{
checked: true
},
{
checked: false
}
];
}
见小提琴
[编辑]
角度的要点是你不需要担心更新HTML。 你只需要改变你的$scope.addons
。
您可以看到您的代码如何与 promise 一起工作,以及如何每 3 秒向 $scope.addons
添加项目。我通过delay
服务模拟了异步任务。
小提琴 2
顺便说一句,我没有碰你的HTML
您的对象addon
仅存在于模板上的 ng-repeat 中。在控制器上,您应该具有类似以下内容的内容:
$scope.addons[0].isChecked = true;
因为插件是一个数组。请注意,isChecked 可以采用任何属性名称
然后在模板上使用:
<div x-ng-repeat="addon in addons">
<label for="{{addon.addoncode}}">
<input type="checkbox" x-ng-model="addon.isChecked" x-ng-click="checkAddonDependencies()" >
<span x-ng-bind-html="addon.addon_desc">{{addon.addon_desc}}</span> </label>
</div>
事实证明这是一件简单的事情。不使用复选框 ID:
document.getElementById(dep).checked=true;
我只需要使用角度滤镜:
var x = filterFilter($scope.addons, {
addoncode: dep
});
x[0].checked = true;
相关文章:
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- JavaScript-切换“;全部检查”;复选框true/false
- 根据签入的表单,在html电子邮件模板中将复选框标记为true
- 如何通过javarscript或jquery在数组中添加属性复选框(checked=true)
- HTML 复选框 Click() 使用 jQuery 返回 FALSE 或 TRUE,而不是 READONLY 或 DI
- 输入复选框 true 或选中或是
- Angularjs 设置复选框为 true
- JQuery 复选框不会更改 .prop(“checked”, true) 处的视觉状态
- 用于更改true与false函数值的复选框
- checked=true,来自前面的复选框
- 当取消选中jQuery时,复选框仍然显示为true
- 将复选框的默认值绑定到角度模型,其中true和amp;false表示为'是'&'没有'
- 使用jQuery将使用复选框的数据属性从false更改为true
- 根据Webix中的复选框值编辑true/false
- 如果第一个的返回值为true,则显示第二个复选框
- 在ng-click中,复选框返回false而不是true
- Javascript复选框在移动设备上总是返回true
- AngularJS复选框动态ng-true-value表达式
- ASP.复选框上的灰色字段= true
- 当javascript中checked属性设置为true时,复选框在UI中不会显示为checked