Validation of multiple choice with comments

More
3 years 4 months ago #109937 by rauno_s
rauno_s created the topic: Validation of multiple choice with comments
Hi,

can anybody help (or point to an example) of how to validate a mandatory multiple-choice-with-comment type of question. Expression should validate that all checked options must have something (at least 5 characters) typed in the comment field.

thanks!

Please Log in to join the conversation.

More
3 years 4 months ago #110002 by tpartner
tpartner replied the topic: Validation of multiple choice with comments
I'm not sure you can do that with Expression Manager but you can with JavaScript.

Set up your survey to use JavaScript and add something like this to the source of the question:

<script type="text/javascript" charset="utf-8">	
	$(document).ready(function() {
 
		// Identify this question
		var thisQuestion = $('#question'+{QID}+'');
 
		// Interrupt the submit process
		$('#movenextbtn, #movesubmitbtn').bind('click', function () {
 
			// Reset the errors
			var commentError = 0;
			$('li.answer-item', thisQuestion).css('background-color', 'transparent');
 
			// Check for invalid comments
			$('input.checkbox:checked', thisQuestion).each(function(i) {
				var thisItem = $(this).closest('li.answer-item');
				var thisComment = $('input[type="text"]', thisItem);
				if($(thisComment).val().length < 6) {
					$(thisItem).css('background-color', 'pink');
					commentError = 1;
				}
			});
 
			// Comment failed so abort submit
			if(commentError == 1) {
				alert("Comments must be at least 5 characters.");
				return false;
			}
		});
 
	});
</script>

Cheers,
Tony Partner
Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.

Please Log in to join the conversation.

Start now!

Just create your account and start using Limesurvey today.

Register now