Данные, которые выводятся PHP во время запроса AJAX, будут находиться в переменной data
вашей функции обратного вызова success
. Если вы хотите добавить данные на свою страницу, вам нужно сделать это в функции успеха.
$.ajax({
type: "POST",
url: "bin/process.php",
data: dataString,
cache:false,
success: function(data) {
// the data variable contains all PHP output during this request
$('#display').html(data);
}
});
Также обратите внимание, что ваш скрипт в настоящее время указал, что это запрос JSON - что jQuery должен обрабатывать вывод как данные JSON. Однако вы выводите текстовые / html-данные в свой фрагмент PHP. Либо а) добавьте ваш html в одну переменную, затем вызовите print json_encode($mydata);
, ИЛИ b) удалите свойство datatype
из запроса. jQuery автоматически определит тип ответа. В приведенном выше примере предполагается, что вы НЕ меняете код PHP, ниже приведены подробные сведения о том, как правильно использовать JSON (требуется изменить PHP).
Чтобы сделать метод JSON, вместо использования echo
, используйте переменную:
$html = '';
$html .= 'Doctype: '.$doctype;
$html .= 'Something elese: '.$something_else;
// etc...
die(json_encode(array('html'=>$html)));
Тогда ваша jjuery ajax-функция выглядит следующим образом:
$.ajax({
type: "POST",
url: "bin/process.php",
data: dataString,
cache:false,
datatype: 'json',
success: function(data) {
$('#display').html(data.html);
}
});