2017-09-05 142 views
0

我花了一天时间检查此代码,但仍找不到错误的位置。AJAX不按预期方式工作

<div class="col-md-6"> 
    <br/> 
    <label for="name">Class ID</label> 
    <select class="form-control" id="csid" name="csid"> 
    <option>----------Please select a Class Code---------</option> 
    <?php 
     $query = $con->query("SELECT * FROM class WHERE class_status='Active' "); 
     $rowCount = $query->num_rows; 
     if($rowCount > 0) { 
     while($row = $query->fetch_assoc()) { 
      echo '<option value="'.$row['class_id'].'">'.$row['class_code'].'</option>'; 
     } 
     } 
     else { 
     echo '<option value="">Class ID not available</option>'; 
     } 
    ?> 
    </select> 
</div> 
<div class="col-md-6"> 
    <br/> 
    <label for="name">Subject Name</label> 
    <input type="text" class="form-control" name="subid" id="subid" disabled/> 
</div> 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
<script> 
    $(document).ready(function(){ 
     $('#csid').change(function(){ 
     var classid = $(this).val(); 
     $.ajax({ 
      type:'POST', 
      url:'ajax.php', 
      data:{classid:classid}, 
      success:function(data){ 
      $('#subid').val(data); 
      } 
     }); 
     }); 
    }); 
</script> 

这里是我的ajax.php文件:

<?php 

include('dataconnect.php'); 

if (isset($_POST['classid'])) 
{ 
    $qry = "select * from class where class_id=". $_POST['classid']; 
    $rec = mysql_query($qry); 
    if (mysql_num_rows($rec) > 0) { 
     while ($res = mysql_fetch_array($rec)) { 
      echo $res['class_status']; 
     } 
    } 
} 

?> 

任何人都可以让我知道错误所在,因为我真的无法找到它。谢谢。

+1

对不起,但我不明白你遇到的问题。 –

+0

您是否尝试过[**调试**](https://en.wikipedia.org/wiki/Debugging)您的代码? –

+4

另外,请注意'mysql_'构造函数是[PHP5.5以下版本不推荐使用](https://wiki.php.net/rfc/mysql_deprecation),并且[**在PHP 7 **中被移除] (https://wiki.php.net/rfc/remove_deprecated_functionality_in_php7#extmysql)。请考虑切换到[** MySQLi **](http://php.net/manual/en/book.mysqli.php)或[** PDO **](http://php.net/manual/ en/book.pdo.php),确保你也使用[** prepared statements **](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)来防止[** SQL注入**](https://en.wikipedia.org/wiki/SQL_injection)。 –

回答