doushao1948 2018-07-11 09:52
浏览 180

选择深层嵌套的复选框需要使用jQuery选择父复选框

I'm trying to select a deeply nested checkbox child, and when doing so, my jQuery code will also select the parent checkboxes above it in the DOM. I then want to store the IDs of the parent checkboxes by using the IDs of the deeply nested child checkboxes.

My sample code doesn't work properly as constructed.

Sample: JSFiddle.

Code:

<form action="" method="POST" id="RoleForm">
  <div class="form-group">
    <label>Role Name</label><input id="rolename" required="" class="form-control" name="rolename" placeholder="Add Role Name" type="text">
  </div>
  <div class="form-group">
    <label>Role Description</label>
    <textarea id="roledesc" required="" class="form-control" name="roledesc" placeholder="Add Role Description"></textarea>
  </div>
  <div class="form-group">
    <ul>
      <li style="display: block; width: 100%;float: left;">
        <input name="page" value="page-1" type="checkbox">Cockpit <br>
        <ul>
          <li style="display: block;width: 20%;float:left;">
            <input name="action" value="action-1" type="checkbox">Update Deposit Amount <br>
          </li>
          <li style="display: block;width: 20%;float:left;">
            <input name="action" value="action-2" type="checkbox">Pay To Captain <br>
          </li>
          <li style="display: block;width: 20%;float:left;">
            <input name="action" value="action-3" type="checkbox">My Action <br>
          </li>
        </ul>
      </li>
      <li style="display: block; width: 100%;float: left;">
        <input name="page" value="page-2" type="checkbox">Dashboard <br>
        <ul>
          <li style="display: block;width: 20%;float:left;">
            <input name="action" value="action-2" type="checkbox">Update Deposit Amount <br>
          </li>
          <li style="display: block;width: 20%;float:left;">
            <input name="action" value="action-1" type="checkbox">Pay To Captain <br>
          </li>
        </ul>
      </li>
      <li style="display: block; width: 100%;float: left;">
        <input name="page" value="page-5" type="checkbox">TestPage <br>
        <ul>
          <li style="display: block;width: 20%;float:left;">
            <input name="action" value="action-2" type="checkbox">Pay To Captain <br>
          </li>
        </ul>
      </li>
    </ul>
  </div>
</form>

jQuery:

var pageArray = [];
var actionArray = [];
$('input[name="page"]:checked').each(function() {
  pageArray.push($(this).val());
  $('input[name="action"]:checked').each(function() {
    actionArray.push($(this).val());
  });
});
alert(actionArray);
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 数学建模招标中位数问题
    • ¥15 phython路径名过长报错 不知道什么问题
    • ¥15 深度学习中模型转换该怎么实现
    • ¥15 HLs设计手写数字识别程序编译通不过
    • ¥15 Stata外部命令安装问题求帮助!
    • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
    • ¥15 TYPCE母转母,插入认方向
    • ¥15 如何用python向钉钉机器人发送可以放大的图片?
    • ¥15 matlab(相关搜索:紧聚焦)
    • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计