2014-01-29 67 views
0

這裏是我jQuery從jQuery的無響應。員額即使PHP正在返回正確的數據

function SelectSubCats(cat_num) { 
    console.log("Select SubCats.."); 
    $.post("ajax.php", { 
     _populateSubCats : 1, 
     cat_num : cat_num 
    }, 
    function(data){ 
     console.log("Data: " + data); 
    }); 
} 

我沒有達到console.log語句是問題。

ajax.php

else if(array_key_exists('_populateSubCats', $_POST)) { // {{{ 
    $cat_num = $DB->escape($_POST['cat_num']); 
    print GetSubCats($cat_num); 
} // }}} 

function GetSubCats($cat_num) { 
    global $DB; 
    $returnHTML = ''; 

    $query = "SELECT sc_i_num, sc_s_subcategory FROM subcat " 
      . "WHERE sc_i_c_num = {$cat_num} " 
      . "ORDER BY sc_s_subcategory"; 
    $result = $DB->query($query); 
    $returnHTML .= "<option value=''></option>"; 
    while($obj = $DB->next($result)) { 
     $returnHTML .= "<option value='{$obj->sc_i_num}'>{$obj->sc_s_subcategory}</option>"; 
    } 
    return $returnHTML;  
} 

返回生成<option> S代表一個<select>。這個想法是,有分類和子分類。上面的jQuery函數在類別<select>onchange中調用。最終,我想用附加代替console.log,將新數據添加到子類別選擇中。但現在,我只是想得到答覆。我記錄了PHP的一面,並得到了我需要的確切響應。還有什麼呢?

+3

什麼是你看到的在網絡選項卡被退回? – Samsquanch

+0

首先打開瀏覽器的開發人員工具,轉到xhrs並跟蹤ajax請求並確保它獲得響應,然後如果您在控制檯中有響應,請將響應複製到所有標題和內容中,然後粘貼到此處供我們閱讀找出問題所在。 –

+0

我也從firefox中的控制檯獲取'文檔元素後的垃圾'。 – KickingLettuce

回答

3

通過添加, 'html'指定所需的回覆類型。

即:

function SelectSubCats(cat_num) { 
    console.log("Select SubCats.."); 
    $.post("ajax.php", { 
     _populateSubCats : 1, 
     cat_num : cat_num 
    }, 
    function(data){ 
     console.log("Data: " + data); 
    }, 'html'); 
} 
相關問題