Поймать 2 разных xmlhttp.responseText за один раз

0

Как мне уловить 2 ответа (в эхо) из моего Php с помощью xmlhttp.responseText?

Мой php отправляет это обратно:

echo "error1";
echo "error2";

Теперь мне нужно поймать эти 2 эха и, в основном, "расколоть" их, чтобы я мог это сделать, например

document.getElementById("errorDIV").innerHTML=xmlhttp.responseText;

document.getElementById("ERROR2DIV").innerHTML=xmlhttp.responseText2;

Таким образом, errorDIV становится текстом "error1", а ERROR2DIV становится текстом "error2".

Как мне это сделать?

Заранее спасибо.

Теги:
xmlhttprequest

2 ответа

3

Вы должны изменить вывод своего PHP-скрипта, чтобы он включал разделитель, например:

echo "error1";
echo " || ";
echo "error2";

Теперь на стороне клиента вы можете разделить answeretext на массив javascript:

var responseArray = xmlhttp.responseText.split("||");
document.getElementById("errorDIV").innerHTML=responseArray[0];
document.getElementById("ERROR2DIV").innerHTML=responseArray[1];

Есть более чистые способы, вы можете узнать, как выводить JSON в PHP и как использовать вывод в JavaScript.

  • 0
    Да, уже думал, что это будет так, спасибо!
0

Вы не можете. На вашем сервере всего 1 ответ. Тем не менее, вы можете обернуть ответ сервера в формате, который клиент может прочитать, например, xml или более предпочтительный json.

Из xml/json/например, вы фактически получаете объект с несколькими значениями. Оттуда вы можете присвоить разные значения различным dom-элементам.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню