I'm creating a multiple choice assessment using jQuery. Currently the DOM structure is as follows:
<button class="multiplesubmit">Check Answer</button> <ul class="multiplechoice_answergroup"> <li class="multiplechoice_answer True"><input class="checkbox" type="checkbox" name="checkbox"> Answer 1</li> <li class="multiplechoice_answer False"><input class="checkbox" type="checkbox" name="checkbox"> Answer 1</li> <li class="multiplechoice_answer False"><input class="checkbox" type="checkbox" name="checkbox"> Answer 1</li> <li class="multiplechoice_answer True"><input class="checkbox" type="checkbox" name="checkbox"> Answer 1</li> </ul> I need to write a function that when the button is clicked to see if the checkbox is ticked and that the class name of the li contains 'True'.
So far this is my jQuery:
$('.multiplechoice_answer .Paragraph').prepend('<input class="checkbox" type="checkbox" name="checkme" />'); $('.multiplechoice_wrap').prepend('<button class="submit_button multiplesubmit">Check Answer</button>'); $('.multiplesubmit').click(function() { multipleChoiceCheck(); }); var multipleChoiceCheck = function() { if($('input:checkbox[name=checkme]').is(':checked') && $('.multiplechoice_answer').hasClass('True')) { alert('correct!'); } };
[name=checkme]this won't never match your checkboxes in your current HTML code, looks like you miss the names for your checkboxes.