【问题标题】:How to count number of checkboxes on open object in view?如何计算视图中打开对象上的复选框数量?
【发布时间】: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


【解决方案1】:

假设您当前的面板如下所示

var test = document.getElementById("dv_Test");
get_CheckboxCount(test);
function get_CheckboxCount(element) {
  var check = element.querySelectorAll("input[type=checkbox]");
  console.log(check.length);
}
<div id="dv_Test">
    <input type="checkbox" />
    <input type="checkbox" />
    <input type="checkbox" />
    <input type="checkbox" />
    <input type="checkbox" />
    <input type="checkbox" />
    <input type="checkbox" />
</div>

<div id="dv_Test2">
    <input type="checkbox" />
</div>

【讨论】:

  • 我会检查的。非常感谢
  • 你可以点击运行代码sn-p试试看是否正常
  • 孟买,html 是 angularjs,我无法弄清楚复选框所在元素的 id...
  • 我使用我们的一种拖放产品,您将小部件(“panel”)或(“gridlayout”)和(“checkbox”)拖到画布上,然后您可以使用Javascript绑定到这些小部件..我知道,不容易...
猜你喜欢
  • 2016-02-28
  • 1970-01-01
  • 2012-06-10
  • 2013-06-14
  • 2018-03-27
  • 2014-05-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多