繁体   English   中英

下一步按钮不起作用,无法识别输入类型单选按钮中所需的

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM