【发布时间】:2023-04-06 10:55:01
【问题描述】:
我正在尝试计算我所在的当前面板上的复选框元素的数量。发生的事情是我在 4 个面板上有复选框,每个面板上都有复选框。 一次只能打开一个面板。当我计算复选框时,我得到的是我的应用程序中所有复选框的总数,而不是我正在显示的面板上的数字。
我试过专门告诉代码这是打开的窗口
var a = angular.element(document.querySelector('[widget-id="popup-1"]
div')).scope().$parent.me.visible
但无济于事,
我不知道如何告诉代码这是打开的面板,只计算其上的复选框。
我正在尝试计算框的数量,然后比较选中的框,如果 num = 选中,那么我将继续。
$scope.checkNum = function() {
// var a = angular.element(document.querySelector('[widget-id="popup-1"]
div')).scope().$parent.me.visible
var inputs = document.getElementsByTagName("input");
//or document.forms[0].elements;
var cbs = [];
//will contain all checkboxes
var checked = [];
//will contain all checked checkboxes
for (var i = 0; i < inputs.length; i++) {
if (inputs[i].type == "checkbox") {
cbs.push(inputs[i]);
if (inputs[i].checked) {
checked.push(inputs[i]);
}
}
}
var nbCbs = cbs.length;
//number of checkboxes
var nbChecked = checked.length;
//number of checked checkboxes
alert("# checkboxes = " + nbCbs + "\n" + "# checked checkboxes = " +
nbChecked);
console.log(" # checked checkboxes = " + nbChecked);
}
【问题讨论】:
-
请给我们您的 HTML 代码好吗?
-
杰克,我没有 HTML,因为它是在幕后生成的。如果有帮助,我可以从开发人员工具中获取它 -> 来源。
-
@user5451365 看看我的回答,如果它解决了你的问题,请告诉我
标签: javascript angularjs checkbox