[英]button for next is not working, not recognizing the required in input type radio button
该表单具有验证,如果未回答,则无法单击下一步按钮。 但是,在我的代码中,即使未回答这些字段,也可以单击下一步按钮。 验证不被识别。
这是我的按钮代码的一部分。
$(document).ready(function(){
var form_count = 1, previous_form, next_form, total_forms;
total_forms = $("fieldset").length;
$(".next-form").click(function(){
previous_form = $(this).parent();
next_form = $(this).parent().next();
next_form.show();
previous_form.hide();
setProgressBarValue(++form_count);
});
这是代码:
<form action="applicantAssessmentSave.php" method="post" id="register_form">
<div class="col-lg-6 col-md-6 col-sm-12">
<div class="form-group">
<label for="finished_degree" style="color:#fff";>Finished Degree</label>
<select class="form-control" name="finished_degree" id="finished_degree" onchange= "handleSelectChange(event)" required>
<option value="" selected disabled >Select your finished degree</option>
<option value="BSIT">BSIT</option>
<option value="BSHM">BSHM</option>
<option value="BSBA">BSBA</option>
</select>
</div>
<script type="text/javascript">
function handleSelectChange(event){
var selectElement = event.target;
var value = selectElement.value;
$.ajax({
url:"degree_job_match.php",
type: "post",
data: {
"value": $('#finished_degree').val(),
},
success:function(data){
}
});
}
</script>
</div>
<?php
$m = 1;
$query = mysqli_query($con, "select * from question_categories") or die(mysqli_error($con));
$count = mysqli_num_rows($query);
while ($row = mysqli_fetch_array($query)) {
$id = $row['id'];
$question = mysqli_query($con, "select * from question where cat_id='".$id."' ") or die(mysqli_error($con));
?>
<fieldset>
<input type="hidden" name="cat_id[]" value="<?php echo $row['id'] ?>">
<div class="card" style="background-color: #fff; " >
<div class="card-body" style="margin-left: 20px;">
<div class="form-check form-check-inline">
<?php
while ($question_row = mysqli_fetch_array($question)) {
?>
<input type="hidden" name="question_id[<?php echo $row['id'] ?>][<?php echo $question_row['id'] ?>]" value="<?php echo $question_row['id'] ?>">
<div class="form-group">
<label style="font-weight: 900;">
<strong>
<?php echo $question_row['question']; ?>
</strong>
</label>
<br>
<div class="form-check">
<input class="form-check-input" type="radio" name="answer[<?php echo $row['id'] ?>][<?php echo $question_row['id'] ?>]" value="5" required>
<label class="form-check-label">
Strongly Agree
</label>
</div>
<br>
<div class="form-check">
<input class="form-check-input" type="radio" name="answer[<?php echo $row['id'] ?>][<?php echo $question_row['id'] ?>]" value="4" required>
<label class="form-check-label">
Agree
</label>
</div>
<br>
<div class="form-check">
<input class="form-check-input" type="radio" name="answer[<?php echo $row['id'] ?>][<?php echo $question_row['id'] ?>]" value="3" required>
<label class="form-check-label">
Neutral
</label>
</div>
<br>
<div class="form-check">
<input class="form-check-input" type="radio" name="answer[<?php echo $row['id'] ?>][<?php echo $question_row['id'] ?>]" value="2" required>
<label class="form-check-label">
Disgree
</label>
</div>
<br>
<div class="form-check">
<input class="form-check-input" type="radio" name="answer[<?php echo $row['id'] ?>][<?php echo $question_row['id'] ?>]" value="1" required>
<label class="form-check-label">
Strongly Disagree
</label>
</div>
<br>
</div>
<?php } ?>
</div>
</div>
</div>
<?php if($m!=$count){ ?>
<button name="" id="" class="btn btn-primary next-form btn-sm" type="button" style="background-color: #fff200; color:#000;">
Next
</button>
<?php } if($m!=1){ ?>
<button name="" id="" class="btn btn-warning previous-form" type="button">
Previous
</button>
<?php } ?>
<?php if($m==$count){ ?>
<button class="btn btn-info submit" id="submit_form">
Submit
</button>
<?php } ?>
</fieldset>
<?php
$m++;
}
?>
</form>
我想要做的是首先验证是否在每个问题中选择了单选按钮,然后按钮下一步将显示下一组问题。 但是在这段代码中,即使第一组问题没有得到回答,它也不会验证并只显示下一组问题。
只需在按钮单击事件中使用form.checkValidity()
function
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.