遍历嵌套到组和节中的一组输入

iterate through a a set of input nested into groups and sections

本文关键字:一组 输入 嵌套 遍历      更新时间:2023-09-26

我想遍历嵌套在组和节中的一组输入,目标是在每个组和节中执行验证

<script src="jquery/jquery.js"></script>
<div  id="groupA" class="preGroups">
    <div id="section-A1">
    <input name="SRPR1"  type="text">
    <input name="SRPR2"  type="text">
    </div>
    <div id="section-A2">
    <input name="SRPR1"  type="text">
    <input name="SRPR2"  type="text">
    </div>
    <div id="section-A3">
    <input name="SRPR1"  type="text">
    <input name="SRPR2"  type="text">
    </div>
    <div id="section-A4">
    <input name="SRPR1"  type="text">
    <input name="SRPR2"  type="text">
    </div>
</div>
<div  id="groupB" class="preGroups">
    <div id="section-B1">
    <input name="SRPR1"  type="text">
    <input name="SRPR2"  type="text">
    </div>
    <div id="section-B2">
    <input name="SRPR1"  type="text">
    <input name="SRPR2"  type="text">
    </div>
    <div id="section-B3">
    <input name="SRPR1"  type="text">
    <input name="SRPR2"  type="text">
    </div>
    </div>
<script>    
// capture all groups
groups = $('div#[id^=group]'); 
console.log(groups);
// iterate through each group in groups
$.each(groups, function(key, group) {
    console.log(group);
    // iterate through each section in group 
    sections = $('div#[id^=section]'); 
    $.each(sections, function(key, section) {
        console.log(section);
        // iterate inputs in each group
        // more code goes here
        /// console.log(input.name + " " +  input.value);       
    });
});

看起来你可能需要sections = $(group).find('div#[id^=section]');而不是sections = $('div#[id^=section]');

编辑

完整代码:

groups = $('div[id^="group"]'); 
//console.log(groups);
// iterate through each group in groups
$.each(groups, function(key, group) {
    //console.log(group);
    // iterate through each section in group 
    sections = $(group).find('div[id^="section"]'); 
    $.each(sections, function(key, section) {
        //console.log(section);
        var inputs = $(section).find("input");
        // iterate inputs in each group
        // more code goes here
        inputs.each(function(){
            console.log(this.name + " " +  this.value);
        })
        /// console.log(input.name + " " +  input.value);       
    });
});

演示