2014-11-20 42 views
0

我一直試圖讓我的方式已經約4-5小時左右。阿賈克斯呼叫不返回任何

基本上,我有一個HTML表單,其中包含從數據庫和提交按鈕填充下拉菜單。根據所選的值,我想在不刷新細節的情況下將相關細節顯示在表格中。問題是我很難理解爲什麼jQuery Ajax沒有做任何事情。

HTML表單:

<form name="jobIDs" method= "POST"> 
     <label for="valuelist">Job ID </label> 
     <select name="jobList" id= "jobList">;  
        <?php        
         $value= $_POST ["jobList"]; 

         $db->sql('SELECT jobID FROM jobmaster ORDER BY jobID'); 
         $result= $db->getResult(); 
         foreach($result as $output){ 
         echo '<option value="'.$output['jobID'].'">'.$output['jobID'].'</option>'; 
         } 
         echo "</select>"; 
        ?> 
     <input type="submit" id="jobID-submit" value="Submit"> 
     </form> 

<table id="jobDetails"> 
    <thead> 
     <tr> 
      <th>Detail</th> 
      <th>Value</th> 
     </tr> 
    </thead>  
    <tbody></tbody> 
</table> 

<script type="text/javascript" src="scripts/jobDetails.js"></script> 

AJAX

  $('input#jobID-submit').on('click',function(){ 
      var jobid= document.getElementById('jobList').value; 
     // alert (jobid); 
       function makeAjaxRequest() { 
        $.ajax({ 
         url: 'ajax/s2_jobDetails.php', 
         type: 'POST', 
         data: {jobList: jobid}, 
         success: function(response) { 
         $('table#jobDetails tbody').html(response); 
         } 
        }); 
       } 
     }); 

MYSQL/PHP

if (isset($_POST["jobList"])) { 

$value= $_POST["jobList"]; 

.......connection + mysql query... 

foreach ($result as $output){ 



    echo '<tr>'; 
    echo '<td> Job ID: </td>'; 
    echo '<td>' . $output['jobID'] . '</td>' ; 
    echo '</tr><tr>'; 
    echo '<td> Quote ID: </td>' ; 
    echo '<td>' . $output['quoteID'] . '</td>'; 
    echo '</tr>'; 

蘇bmit按鈕 - 元素檢查

200- POST - section_2.php 304- GET -jobDetails.js

+1

那麼,爲什麼你不看網絡工具中的響應?你會看到什麼被返回。 – 2014-11-20 19:02:18

+2

它可能是,但由於您並不阻止點擊冒泡,因此正常的表單提交本身將繼續,並在瀏覽器離開您的表單頁面繼續進行表單提交/結果頁面時終止您的ajax請求。 – 2014-11-20 19:13:29

+0

xhr的狀態代碼是什麼 – 2014-11-20 19:18:47

回答

0

您發送請求到'ajax/s2_jobDetails.php',如果這是在這裏顯示的PHP文件,那麼它似乎正在發送HTML內容。請指定您應該接收的內容類型,如HTML,JSON等