2012-03-21 42 views
0

嗨,大家好即時通訊儘量讓使用JSON的組合框,但無法做到這一點右擊JSON組合框的MySQL

jQuery函數

$("select#selest").change(function(){ 
    $("select#reccid").html('<option value="">Carregando...</option>'); 
    $.getJSON("/inc/geraCidades.php",{estado: $(this).val()}, function(resposta){ 
     if(resposta === null){ 
      var options = '<option value="">-</option>'; 
     } 
     else{ 
      var options = '<option value="">-</option>'; 
      $.each(resposta, function(key, val) { 
       options += '<option value="' + key + '">' + val + '</option>'; 
      }); 
     } 
     $("select#reccid").html(options); 
    }) 
}) 

我的PHP文件

<? 
header("Content-Type: application/json"); 
include("config.php"); 
$Estado_Id = mysql_real_escape_string($_REQUEST["estado"]); 
$Sql01 = "SELECT * FROM tabcidades WHERE Estado_Id = '$Estado_Id' ORDER BY Cidade_Nome ASC"; 
$Query01 = mysql_query($Sql01, $Conn); 
while($Rs01 = mysql_fetch_array($Query01)){ 
    //if($Rs01["Cidade_Id"] == $Cidade_Id) $selected = "selected"; 
    //else $selected = ""; 
    $array[] = array('key' => $Rs01['Cidade_Id'], 'val' => $Rs01['Cidade_Nome']); 
} 
echo json_encode($array); 

?>

返回來的只是對象

感謝您的幫助

+0

你的php文件輸出是什麼? – Kamal 2012-03-21 07:23:35

+0

[object object]如果我做$ array [] = array($ Rs01 ['Cidade_Id'],$ Rs01 ['Cidade_Nome']);返回像ID,名稱1,紐約但選擇值出錯 – 2012-03-21 19:07:53

回答

0

請嘗試以下代碼..

$("select#selest").change(function(){  
    $("select#reccid").html('<option value="">Carregando...</option>'); 
    $.getJSON("/inc/geraCidades.php",{estado: $(this).val()}, function(resposta){ 
     if(resposta === null){ 
      var options = '<option value="">-</option>'; 
     } 
     else{ 
      var options = '<option value="">-</option>';      
      $.each(resposta,function(arrayID,resp){ 
       $.each(resp,function(key,val){ 
        options += '<option value="' + key + '">' + val + '</option>'; 
       }); 
      });    
     } 
     $("select#reccid").html(options); 
    }) 
}) 

這給了我在第二個下拉選項,其中包括鍵和值這樣1Test

和我要求的PHP的輸出,即價值PHP文件中的$ array。看看打印二維數組的$ array值,所以你需要循環兩次來設置選項。希望這會幫助你。