更改数据表中的警告消息

时间:2018-07-22 10:33:15

标签: javascript php jquery ajax datatables

我有数据表,并且我使用两个组合框进行了高级搜索,我的问题是如果我搜索一些数据并且数据不存在,它会显示这样的警告 DataTables警告:table id = myTable-无效的JSON响应。有关此错误的更多信息,请参见http://datatables.net/tn/1 。现在我想更改警告,例如不存在。请帮助我。我只是学生,对不起我的英语

这是我在search.php中的代码

<section>
  <div class="container">
    <div class="row">
      <div class="col-md-12">
        <form id="myForm" class="form-inline">
          <div class="form-group">
            <label>Experience</label>
            <select id="experience" class="form-control" name="exp">
              <option disabled selected>Select Experience</option>
              <?php
              $sql = "SELECT DISTINCT(experience) FROM job_post WHERE experience is not null";
              $result=$conn->query($sql);
              if ($result->num_rows>0) {
                while ($row = $result->fetch_assoc()) {
                  echo "<option value='".$row['experience']."'>".$row['experience']."</option>";
                }
              }
              ?>
            </select>
          </div>
          <div class="form-group">
            <label>Qualification</label>
            <select id="qualification" class="form-control" name="qua">
              <option disabled selected>Qualification</option>
              <?php
              $sql = "SELECT DISTINCT(qualification) FROM job_post WHERE qualification is not null";
              $result=$conn->query($sql);
              if ($result->num_rows>0) {
                while ($row = $result->fetch_assoc()) {
                  echo "<option value='".$row['qualification']."'>".$row['qualification']."</option>";
                }
              }
              ?>
            </select>
          </div>
          <button id="" class="btn btn-success">Search</button>
        </form>
      </div>
    </div>
    <div class="row" style="margin-top: 5%;">
      <div class="table-responsive">
        <table id="myTable" class="table" style="width: 1190px;">
          <thead>
            <th>Job Name</th>
            <th>Job Description</th>
            <th>Minimum Salary</th>
            <th>Maximum Salary</th>
            <th>Experience</th>
            <th>Qualification</th>
          </thead>
          <tbody>

          </tbody>
        </table>
      </div>
    </div>
  </div>
</section>



<script src="js/jquery-3.3.1.min.js"></script>
<script src="//cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js"></script>

<script type="text/javascript">
  $(function(){

    var oTable = $('#myTable').DataTable({
      "autoWidth" : false,
      "ajax" : {
          "url" : "refresh_job_search.php",
          "dataSrc": "",
          "data" : function(d){
            d.experience = $("#experience").val();
            d.qualification = $("#qualification").val();
          }
      }
    });

    $("#myForm").on("submit", function(e){
      e.preventDefault();
      oTable.ajax.reload(null, false);
    });



  });
</script>

这是我的refresh_job_search.php

<?php
session_start();
require_once("db.php");


$sql = "SELECT * FROM job_post";

if (!empty($_GET['experience'])) {
    $sql = $sql." WHERE experience = '$_GET[experience]'";
}

if (!empty($_GET['qualification']) && !empty($_GET['experience'])) {
    $sql = $sql." AND qualification = '$_GET[qualification]'";
}else if(!empty($_GET['qualification'])){
    $sql = $sql." WHERE qualification = '$_GET[qualification]'";
}


$result=$conn->query($sql);
if ($result->num_rows>0) {
  while($row=$result->fetch_assoc()){
    $json[] = array(
        0 => $row['jobtitle'],
        1 => $row['description'],
        2 => $row['minimumsalary'],
        3 => $row['maximumsalary'],
        4 => $row['experience'],
        5 => $row['qualification'],
        );
  }
  echo json_encode($json);
 }

0 个答案:

没有答案