2010-03-15 5 views
1

У меня есть этот PHP кодPHP JSON JQuery и выберите поле

$jsonArray = array(); 
$sql = "SELECT ID,CLIENT FROM PLD_SERVERS"; 
$result = mysql_query($sql); 
while($row = mysql_fetch_array($result)) { 
    $jsonArray[] = array('id'=>$row['ID'],'client'=>$row['CLIENT']); 
} 
echo json_encode($jsonArray); 

И это Js

function autosearchLoadServers() 
{ 

    $.post("php/autosearch-load-servers.php",function(data){ 
     var toAppend = ""; 
     for(var i = 0; i < data.length; i++){ 
      toAppend += '<option value = \"' + data[i].id + '\">' + data[i].client + '</option>'; 
     } 
     $("#serverSelect").empty(); 
     $("#serverSelect").html(toAppend); 
    }); 

} 

Проблема заключается в том, что я получаю только неопределенные значения. Как это может быть? Значения находятся в JSON, я проверял использование firebug в mozilla, поэтому должно быть что-то с переменной данных, но я не могу понять, что. Я пробовал разные способы и никаких результатов.

ответ

0

Попробуйте указать тип данных в почтовом вызова, как это:

$.post("php/autosearch-load-servers.php",function(data){ 
    var toAppend = ""; 
    for(var i = 0; i < data.length; i++){ 
     toAppend += '<option value = \"' + data[i].id + '\">' + data[i].client + '</option>'; 
    } 
    $("#serverSelect").empty(); 
    $("#serverSelect").html(toAppend); 
}, "json"); 
+0

правильно! настолько глупо, что я этого не вижу. – user253530

Смежные вопросы