2014-01-31 110 views
0

因此,我目前正在嘗試使用ajax和php填充一些SQL選擇選項列表。我試過了各種不同的代碼,但我仍然無法破解它。這是從實際頁面自身的AJAX ...使用SQL填充選項列表

$.ajax ({ 
    url:'orderentry_ajax.php', 
    cache:false, 
    data: {'request': 'getCounty', 'County': County}, 
    dataType: 'json', 
    async: false, 
    success: function(data) 
    { 
     $('#errMsg').html(data.errMsg); 
     if(data.numRecs>0) 
     { 
       //divStr = divStr + data.custName + data.contactName + data.contactNumber + data.contactEmail; 
       countyStr = countyStr + "<select>"; 
       for (var i=0; i<data.dataArray.length; i++) 
       { 
        countyStr = countyStr + 
         "<option value='data.dataArray[i].County'>" + 
         "Please Select" + data.dataArray[i].County + "</option>"; 
       } 
       countyStr = countyStr + "</select>"; 
       $('#Countys').html(countyStr); 
     } 
    } 
    //countyStr =  countyStr + data.dataArray[i].County + 
}); 

就我而言,我做了一個類似的工作,除了我用填充另一個表的選項列表中,我做了兩件Ajax和PHP相同,它似乎並不想工作。下面是從AJAX頁面中的PHP ....

if (trim($request) =='getCounty') 
{ 
    //product update 
    $County = $_REQUEST['County']; 

    $errMsg = ""; 
    $con = mysqli_connect('127.0.0.1', 'root', 'c0mplex', 'HRDatabase'); 
    //Check if connect.. 
    if (mysqli_connect_errno($con)) 
    { 
     $errMsg = 'Could not connect to Database.' . mysqli_connect_error(); 
    } 
    else 
    { 
     // passed record for submit 
     $qryStr = "SELECT * FROM county WHERE `county` = $County"; 
     //echo $qryStr; 
     $result = mysqli_query($con, $qryStr); 
     if (mysqli_error($con)) 
     { 
      //echo (mysqli_error($con)); 
      $errFlg=1; 
      $errMsg="Error during update, please try again. " . mysqli_error($con); 
     } 
     else 
     { 
      while ($row = mysqli_fetch_array($result)) 
      { 
       $County = $row['county']; 

       $rowing = array(); 
       $rowing['county'] = $County; 
       $dataArray[] = $rowing; 
      } 
      $numRecs = mysqli_num_rows($result); 
     } 
    } 
    mysqli_close($con); 
    //to test error : 
    // $errMsg="testing error"; 
    $info ->dataArray = $dataArray; 
    $info ->numRecs = $numRecs; 
    $info ->errMsg = $errMsg; 
    $info ->County = $County; 
    echo json_encode($info); 
    //echo $msg; 

}

的選擇選項列表中有「Countys」的上一個ID只給一個擡頭。任何幫助將不勝感激球員。

乾杯

+1

什麼是你的錯誤,會發生什麼,應該怎樣?提供更多信息 – Vogel612

+0

首先檢查數據是否到達目標php腳本,然後檢查php腳本返回的數據是否爲成功值或任何錯誤,最終會出現在'error'塊內的ajax調用 – dreamweiver

+0

我的錯誤是該選擇列表未被填充正在調用的SQL表。我已經完成了它,所有似乎都很好,以至於爲什麼它不返回任何東西。只需進行調試,並在完成後發佈結果。 – Copland14

回答

0

替換下面一行在你的Ajax代碼dymically添加HTML

countyStr = countyStr + "<option value='" + data.dataArray[i].County + "'>" + "Please Select" + data.dataArray[i].County + "</option>"; 
+0

謝謝@Snehal然而,不幸的是它沒有改變任何東西。它只是簡單的奇怪,完全相同的代碼完美地在另一個選項列表上... – Copland14

+0

它是否會拋出任何錯誤?可能是ajax的返回值是空的 –

+0

沒有,根本沒有錯誤。雖然我正在用螢火蟲進行調試,但沒有檢測到ajax和SQL,但仍然應該顯示一些內容但不顯示。 – Copland14