我有一个名为出勤的单选按钮,如果未选择“是”或“否”,如何创建错误。目前,如果未选择任何我不想要的按钮,则用户可以提交表单。
<script src="jquery.js"></script>
<script>
$( function(){
function validate(id){
var enabled = ($("input[name='attendance" + id + "']:checked").val() == 'Yes');
if(enabled){
//Please select option is selected
if($("#colour" + id)[0].selectedIndex == 0){
alert('Please make your colourselection');
return false;
}
//Please select option is selected
if($("#shade" + id)[0].selectedIndex == 0){
alert('Please select your shade');
return false;
}
}
return true;
};
$("input[name^='attendance']").click(function() {
var id = this.name.replace('attendance', '');
$("#colour" + id + ", #sahde" + id).prop("disabled", this.value == 'No');
validate(id);
});
$("input:submit").click(function(){
var retVal = true;
$.each([1, 2, 3, 4], function(i, val){
retVal = (validate(val) && retVal);
});
return retVal;
});
});
$(document).ready(function(){
$("input[name=attendance1]:checked").triggerHandler('click');
});
});
if (!($("input[name='attendance1']:checked").val())) {
alert('Nothing is checked!');
return false;
});
</script>
答案 0 :(得分:0)
if ($("input[name='attendance1']:checked").val()) {
alert('Nothing is checked!');
return false;
你错过了一个(在if和$语句之后(“input [name ='attendance1']:checked”)。val()是有一个检查值,意思是,触发警报。
您可能想要改变其工作方式
if (!($("input[name='attendance1']:checked").val())) {
alert('Nothing is checked!');
return false;
现在如果没有选择任何内容,则会触发警报
答案 1 :(得分:0)
我认为您只需要检查复选框是否已选中,因此无需检查此值,只需使用
if ($("input[name='attendance1'].is(":checked")) {
#your code
}
希望这有帮助..........