我想直接用温泉用户界面做一些事情 - 自动取消选中某些选中的开关。所以,我有很多开关,我想模仿单选按钮的行为(基本上是将所有其他开关设置为未检查)。温泉的用户界面开关自动更改
我使用的角度和我得到这个错误,当我尝试从代码做到这一点。
Uncaught TypeError: document.getElementsByTagName(...)[0].setChecked is not a function(…)
基本上我试图
$scope.$on('toggle', function(event, data) {
$scope.selected[data] = event.targetScope.model;
for (i = 0; i < $scope.selected.length; i++) {
if (i != data) {
$scope.selected[i] = !$scope.selected[data];
}
}
});
我的所有交换机都加入动态使用:
> var h = '<ons-list-item><div class="center">' + placeResult.name
> + '</div><div class="right"><ons-switch id="switch' + i
> + '" "ng-model="mySwitch' + i
> + '" ng-click="$emit(\'toggle\',' + i
> + ')"></ons-switch> </div></ons-list-item>';
我不知道,如果动态地添加他们主要有任何问题?
我试着与预设开关相同的代码,它的工作原理。
感谢
你是否手动调用'.setChecked(true)'?这是v1。为v2尝试'.checked = true'。 –
我也尝试过,不起作用。 document.getElementsByTagName(“ons-switch”)[0] .checked undefined – ilijaluve
这不是角度,所以我没有给它作为答案,但这里是一个香草工作示例:https:// codepen。 io/anon/pen/zoqdQm – Munsterlander