перебирать набор входных данных, вложенных в группы и разделы - PullRequest
0 голосов
/ 16 августа 2011

Я хочу перебрать набор входных данных, вложенных в группы и разделы, с целью проверки работоспособности в каждой группе и разделе

<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);       
    });
});

1 Ответ

0 голосов
/ 16 августа 2011

Похоже, вам может понадобиться sections = $(group).find('div#[id^=section]'); вместо sections = $('div#[id^=section]');

EDIT

полный код здесь:

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);       
    });
});


Демо

...