Jquery каждый внутри каждого, чтобы перейти к родителю - PullRequest
0 голосов
/ 13 марта 2019

Я не уверен, правильно ли я это делаю, но у меня есть этот список контента, который нужно вставить в форму, сгенерированную плагином.

Я использую этот код для определения каждой части формы и размещения содержимого в списке, соответствующего выводу.

$('.vfb-page-section').each(function(){
    var sectionName = $('.vfb-page-title',this).text().toLowerCase();
    console.log(sectionName);
    // Get the section name and make it lowercase to match the div class name.

    $('.vfb-fieldType-radio',this).each(function(){
        var groupID = $(this).attr('id').replace('vfbField','');
        console.log(groupID);
        // Get the ID number of the group of inputs.

        $('input',this).each(function(){
            var inputID = $(this).attr('id').replace('vfb-field-'+groupID+'-','');
            console.log(inputID);
            // Get the ID of the input.

            var candidate = $('.cat-'+sectionName+' #'+inputID).clone();
            //Build the selector to find the correct div.
            console.log(candidate);
            $(this).parent().before(candidate);
            // The div needs to be appended to the parent of the input
        });
    });
});

У div на странице есть что-то вроде этого:

<div class="cat-sectionname" id="2">some content</div>

До сих пор мне удалось получить первую группу, в которой контент был перемещен к нужным входным родителям. Но следующий идентификатор группы, кажется, ничего не найдено.

Чего мне не хватает?

1 Ответ

0 голосов
/ 13 марта 2019

Ваш кандидат выбирает 2 элемента вместо 1 с данным классом и идентификатором. Уберите пробел, и он должен найти элемент:

var candidate = $('#'+inputID+'.cat-'+sectionName).clone();

Пробел означает, что он ищет элемент с идентификатором внутри элемента с классом. Соответствующий ответ здесь.

...