Вопрос по ajax, php, javascript – Как я могу вернуть массив из PHP в JavaScript, используя AJAX

9

у меня есть этот код AJAX

xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange=function(){
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
        document.getElementById('addIO').innerHTML+=xmlhttp.responseText;
    }
}
xmlhttp.open("GET","http://localhost/Mar7ba/Ontology/getRelatedConceptsAndRelations/3/TRUE",true);
xmlhttp.send();

и у меня есть массив PHP

$cars=array("Saab","Volvo","BMW","Toyota");

Как я могу отправить массив $ автомобилей на мой JavaScript?

Также смhow to parse json in javascript. Felix Kling
возможный дубликатHow to pass an array of strings from PHP to Javascript using $.ajax()? Felix Kling
я пытаюсь это прочитать, спасибо William Kinaan

Ваш Ответ

2   ответа
5

использованиеJSON:

echo json_encode($cars);
Error: User Rate Limit Exceeded William Kinaan
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit ExceededJSON.parse()Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
15
PHP
echo json_encode($cars);
JavaScript

Native:

With jQuery:

var foo = $.parseJSON(xmlhttp.responseText);
//or
$.getJSON("url", function(data){
    //data is your array
});
UPDATE
if(xmlhttp.readyState==4 && xmlhttp.status==200){
     //document.getElementById('addIO').innerHTML+=xmlhttp.responseText;
    var cars = JSON.parse(xmlhttp.responseText);  //cars will now be the array.
     //Do whatever you want here.
    $("#addIO").html(cars.join(", "));     //Join array with ", " then put it in addIO
}

Если вы хотите использовать jQuery, поместите это в<head>:

<script type="text/javascript" src="link/to/the/file/jquery.js"></script>
Error: User Rate Limit Exceeded William Kinaan
Error: User Rate Limit Exceeded William Kinaan
Error: User Rate Limit ExceededjQuery.
Error: User Rate Limit ExceededfooError: User Rate Limit Exceededjsfiddle.net/DerekL/rMGkV
Error: User Rate Limit Exceededxmlhttp.responseTextError: User Rate Limit Exceededxmlhttp.responseTextError: User Rate Limit Exceededdeveloper.mozilla.org/en/AJAX/Getting_Started

Похожие вопросы