Why is this code appending the object twice for each element?
$('input[data-type="answer"]').each(function (index, input) {
var name = $(input).attr('name');
var value = $(input).val();
$("#QuizQuestion").append('<div id="QuizQuestionHeadline"></div><div class="control-group"><label class="radio"><input type="radio" class="input-fluid" value="' + value + '" />' + value + '</label></div>');
});
Thanks!
Realized I published wrong code, here it is:
Jquery to create the answers:
var newAnswerAlt = "appendAnswerAltRadio" + i++;
$("<div><div class='controls'><input type='text' class='answerAltRadiobtn' data-type='answer' class='input-fluid' name='txtAnswer"+ n++ +"'> <label class='checkbox'><input type='checkbox' id='QuizCheckbox"+ c++ +"'> Correct Answer</label></div></div>").attr({id: newAnswerAlt, class: ''}).prependTo(".NewQuizAnswersGroup").hide().fadeIn('slow');
});
Jquery to get the attributes from the created answers and append them to another element:
$('input[data-type="answer"]').each(function(index, input){
var name = $(input).attr('name');
var value = $(input).val();
var question = "txtQuestion1";
$("#QuizQuestion").append('<div id="QuizQuestionHeadline"></div><div class="control-group"><label class="radio"><input type="radio" class="input-fluid" name="' + question + '" value="'+value+'" />'+value+'</label></div>');
});
var NewQuizQuestion = $("#NewQuizQuestion").val();
$("#QuizQuestionHeadline").append("<legend>"+NewQuizQuestion+"</legend>");
$('input[data-type="UserDetails"]').each(function(index, input){
var name = $(input).attr('name');
var label = $("label[for='"+name+"']").text()
var value = $(input).is(":checked");
if($(input).is(":checked")){
$("#formAlts").append('<div id="formHeader"></div><div class="control-group"><label>'+label+'</label><div class="controls"><input type="text" class="input-fluid" name="' + name + '" /></div></div>');
}
});
var formHeader = "Fill out form";
$("#formHeader").append("<legend>"+formHeader+"</legend>");
var terms = "Accept Terms & Conditions";
$("#terms").append("<div class='control-group'><label class='checkbox'><input type='checkbox' name='txtTerms'>"+terms+"</label></div>");
The second call for "'input[data-type="UserDetails"]'" works fine but not for "'input[data-type="answer"]'".
Can't really understand it!