Javascript Ajax请求失败
我正在做一个联系人表单,我正在尝试使用AJAX。我看过一些youtube指南,但代码对我不起作用。我相信问题出在Javascript Ajax请求失败,javascript,jquery,json,ajax,Javascript,Jquery,Json,Ajax,我正在做一个联系人表单,我正在尝试使用AJAX。我看过一些youtube指南,但代码对我不起作用。我相信问题出在datosEnviados对象上,但我不知道如何修复它。我尝试使用parse函数,但它也不起作用 我得到的错误如下 SyntaxError:JSON中位于位置0(…)的意外标记
datosEnviados
对象上,但我不知道如何修复它。我尝试使用parse函数,但它也不起作用
我得到的错误如下
SyntaxError:JSON中位于位置0(…)的意外标记<
我的JS函数的代码是:
函数ejecutarAjax(事件){
变量datosEnviados={
“nombre”:$('#nombres').val(),
“电子邮件”:$('#email').val(),
“comentario”:$(“#comentario”).val()
}
$.ajax({
键入:“POST”,
url:“../php/enviar_contacto.php”,
数据:datosEnviados,
数据类型:“json”,
编码:正确
})
.done(函数(){
警报(“正常”);
})
.失败(功能(jqXhr、状态、错误){
警报(状态+':'+错误+':'+jqXhr.responseText);
});
event.preventDefault();
}
在定义datosEnviados
时,我的语法有什么问题吗?还是其他什么问题
提前感谢试试这个
function ejecutarAjax(event) {
event.preventDefault(); //This should be at top
var datosEnviados = {
//Try with replace "nombre" to nombre(Remove "")
number : $('#nombres').val(),
email : $('#email').val(),
comentario : $('#comentario').val()
}
$.ajax({
type : 'POST',
url : '../php/enviar_contacto.php',
data : datosEnviados,
dataType: 'json',
encode : true
})
备选方案
function ejecutarAjax(event) {
event.preventDefault(); //This should be at top
$.ajax({
type : 'POST',
url : '../php/enviar_contacto.php',
data : {
nombre : $('#nombres').val(),
email : $('#email').val(),
comentario : $('#comentario').val()
},
success: function(data){
//Your code goes here
}
})
希望这能起作用看起来问题出在json输出中,所以您最好检查/调试您的
enviar\u contacto.php
尝试:dataType:'html'
,如果没有错误,那么检查您的json输出。您使用的是json数据类型。应该在enviar_contacto.php页面中使用json_decode函数,或者在JavaScript回复中使用follow@NoSkill comments,因为您收到的是HTML,并且您明确要求使用json。因为您没有收到有效的JSON,所以您会得到一个错误,即“预期JSON”的第一个字符是无效字符“@NoSkill我已更改为html,它正在工作!非常感谢您,因此他可以使用newForm()