php Devuelve JSON a jQuery Ajax Call
a pesar de sus esfuerzos para comunicarse con PHP a través de la funcionalidad de JQuery Ajax, está continuamente encontrando el error de "selector activado". Además, los datos recuperados parecen incorrectos. Profundicemos en el problema e identifiquemos la causa potencial.
php con json return
el fragmento proporcionado a continuación ilustra cómo devolver los datos JSON en php:
header('Content-Type: application/json');
echo json_encode([
'return' => 1,
'msg1' => 'Message sent OK, we will be in touch ASAP'
]);
exit;
observe la inclusión de encabezado ('content-type: application/json'); antes de echo para especificar el tipo de contenido JSON.
javascript y ajax
Su código JavaScript a continuación debe manejar la llamada ajax con éxito:$ ('#msgid'). Rutina) '); if ($ ('#formenquiry'). válido ()) { $ ("#msgid"). append ("
$('#msgid').html('Submitting Form (External Routine)
');
if ($('#formEnquiry').valid()) {
$("#msgid").append("(Outside Ready) VALIDATED send to PHP
");
$.ajax({
url: "ContactFormProcess3.php",
type: "POST",
data: $('#formEnquiry').serialize(),
dataType: "json",
success: function (data) {
alert("SUCCESS:");
for (var key in data) {
$('#msgid').append(key);
$('#msgid').append('=' data[key] '
');
}
},
error: function (data) {
alert("ERROR: ");
for (var key in data) {
$('#msgid').append(key);
$('#msgid').append('=' data[key] '
');
}
}
});
} else {
$('#msgid').append('(Outside Ready) NOT VALIDATED
');
}
listado supuestamente los datos JSON
[&] la salida que obtiene no está formatado por JSON. Parece que el objeto xhr de jQuery se está imprimiendo en su lugar.
potenciales pitfalls
verifique el siguiente:
Asegúrese de que su script PHP responda con el tipo de contenido correcto (contenido-type: aplicación/json).
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3