I need to get the value of the first checkbox which is checked and who's class name begins with 'rqc', eg. rqc205
I have tried this: requestID=$('#requestsTable').find('input[class^='rqc']:checked').val();
but it yields nothing, whereas requestID=$('#requestsTable').find('input:checked').val();
works but does not limit to the class.
I need to get the value of the first checkbox which is checked and who's class name begins with 'rqc', eg. rqc205
I have tried this: requestID=$('#requestsTable').find('input[class^='rqc']:checked').val();
but it yields nothing, whereas requestID=$('#requestsTable').find('input:checked').val();
works but does not limit to the class.
2 Answers
Reset to default 5You have a syntax error. Either fix your quotes around the attribute value, or remove them altogether (they don't seem to be required).
requestID = $('#requestsTable').find("input[class^='rqc']:checked").val();
or
requestID = $('#requestsTable').find("input[class^=rqc]:checked").val();
Perhaps:
requestID = $('#requestsTable').find('input[class^="rqc"]').filter(':checked').val();
This is, currently un-checked/un-verified. I think it should work, but I'm still new to jQuery, so I'll post the possibility, check it and then amend if necessary.
Much to my surprise, that works.
But it's worth pointing out, I think, that it might be easier to get the value using jQuery's click()
event.
$(document).ready(
function() {
$('input[class^="rqc"]').click(
function() {
var requestID = $(this).val();
}
);
}
);
Though obviously that depends on what exactly you're doing, and why.