jQuery 从数据绑定清单中查找

jQuery lookup from databound checklist

我的 MSCRM 2015 在线解决方案使用第 3 方工具从 N:N 动态构建复选框列表,然后将其发布在另一个 Iframe 中,我在犹豫是否可以使用 jQuery 进行测试如果在 JavaScript

中选中了这些复选框中的任何一个

问题是,如果您查看 html 这些输入没有 ID 或名称,我可以使用类似...

来引用它们
var checkboxValues = [];
$('input[name=checboxset_ava_incident_ava_affectedcountry]:checked').map(function() {
        checkboxValues.push($(this).val());

这是 html 如何构建的示例:

希望大小可以阅读但是我想让你看到的是 <input> 标签的属性:

  <input type="checkbox" data-bind="id: Id, checked: Value, title: Name, enable: $parent.GetIsEnabled()">

如果您想要查找 selected 复选框、单选按钮或 select 元素,请查看 jQuery :checked selector,如

$(':checked')...

如果您想要复选框,请在 select 或

中使用 type 属性
$('input[type=checkbox]')...

或组合它们,以仅查找选中的复选框(即,确保您不会选择任何单选按钮或 select 元素):

$('input[type=checkbox]:checked')...

演示版

var findChecked = function() {
  var checked_values = [];
  var $checkedBoxes = $('input[type=checkbox]:checked');
  console.log('$checkedBoxes', $checkedBoxes.length);
  $checkedBoxes.each(function(i, e) {
    checked_values.push($(e).val());
  });
  alert(checked_values);
};

$('button').click(findChecked);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<label><input type="checkbox" checked value="1" /> 1</label>
<label><input type="checkbox" value="2" /> 2</label>
<label><input type="checkbox" value="3" /> 3</label>
<button>See checked</button>