Заполните 3-й выпадающий список в зависимости от значения, выбранного на втором значении - PullRequest
0 голосов
/ 28 августа 2018

У меня есть 3 выпадающих на странице. Это многоуровневый, что означает, что самый верхний из 3 определяет, что должно быть заполнено во втором раскрывающемся списке. То, что должно быть заполнено в третьем раскрывающемся списке, зависит от того, что выбрано во втором раскрывающемся списке.

 <form name="schoolcreation" method="POST">

            <div class="row">
                <select name="country" id="country">
                  <option value=''>-- Select Country --</option>
                  <?php 
                      $sql = "select * from `countries`";
                      $res = mysqli_query($con, $sql);
                      if(mysqli_num_rows($res) > 0) {
                        while($row = mysqli_fetch_object($res)) {
                          echo "<option value='".$row->alpha_3."'>".$row->name."</option>";
                        }
                      }
                  ?>
                </select>
          </div>
          <div class="row">
              <select name="state" id="state"><option>-- Select State--</option></select>
          </div>
          <div class="row">
              <select name="lga" id="lga"><option>-- Select Local Government Area--</option></select>
          </div>

          <div class="row">
            <input type="submit" name="submit" value="CREATE SCHOOL" class="btn btn-submit">
          </div>
            </form>

Первый и второй уровень работают хорошо. Когда я выбираю во втором раскрывающемся списке, он не заполняет третий. Что мне делать правильно?

$(document).ready(function() {
  $("#state").change(function() {
    var state_id = $(this).find('option:selected').text();
    if(state_id != "") {
      console.log( state_id );
      $.ajax({
        url:"get_lg_areas.php",
        data:{s_id:state_id.replace('State','').trim()},
        type:'POST',
        success:function(response) {
          var resp = $.trim(response);
          console.log( resp );
          $("#lga").html(resp);
        }
      });
    } else {
      $("#lga").html("<option value=''>------- Select --------</option>");
    }
  });
});

Это php файл

<?php include("connectDB.php"); 
      include("debug.php");
?>
<?php
if(isset($_POST['s_id'])) {
  debug_to_console( $_POST['s_id'] );
  $sql = "SELECT * FROM lga WHERE State = '" . mysqli_real_escape_string($con, $_POST['s_id'])."'";
  $res = mysqli_query($con, $sql);
  if( mysqli_num_rows($res) > 0 ) {
    echo "<option value=''>-- Select State --</option>";
    while($row = mysqli_fetch_object($res)) {
      echo "<option value='".$row->SNo."'>".$row->Local_Government_Area."</option>";
    }
  }
} else {
  header('location: ./');
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...