Как бы вы вернули массив из элементов на одном уровне? Точка в правильном направлении была бы отличной. TIA
Вот HTML код, над которым я работаю ============================
<div class="quiz-area">
<div class="question-list" id="question-1" style="display: block;">
<div class="question-content">Select which is a mammal</div>
<input id="question_id_1" type="hidden" name="question_1" value="1">
<div>
<label for="answer-id-1" id="answer-label-1" class="answer">
<input type="radio" name="answer-1" id="answer-id-1" class="answer wrong-answer-label">Frog
</label>
</div>
<div>
<label for="answer-id-2" id="answer-label-2" class="answer">
<input type="radio" name="answer-2" id="answer-id-2" class="answer wrong-answer-label">Chicken
</label>
</div>
<div>
<label for="answer-id-3" id="answer-label-3" class="answer">
<input type="radio" name="answer-3" id="answer-id-3" class="answer wrong-answer-label">Tree
</label>
</div>
<div>
<label for="answer-id-4" id="answer-label-4" class="answer">
<input type="radio" name="answer-4" id="answer-id-4" class="answer right-answer-label">Dog
</label>
</div>
</div>
</div>
request(url, function(error, response, html){
$('.question-list').each((i, el)=>{
let question = $(el)
.find('.question-content')
.text()
.trim();
let correct = $(el)
.find('.correct-answer-label')
.text()
.trim();
let answers = $(el)
.find('.answer')
.text()
.trim()
)};
)};
JSON
I'm getting:
[
{
"question": "Select which is a mammal.",
"answers": "Frog\n \n Chicken\n \n Tree \n Dog",
"correct": "Dog"
}
]
I was expecting:
[
{
"question": "Select which is a mammal.",
"wrong": "Frog", "Chicken", "Tree", "Dog"
"correct": "Dog"
}
]
Мне удалось найти грязное решение, хотя я получаю пустой элемент в массиве. Просто сделал фильтр, чтобы избавиться от пустого элемента. Если вы можете улучшить его, я буду очень признателен.
===============================
let answers = $(el)
.find('.answer').toArray().map(function(x) {
return $(x).text().trim().replace(/\s\s+/g,'');
});
answerList = answers.filter(Boolean)
console.log(answerList)
======================================