ajax请求成功后,返回的data为undefined
$.ajaxFileUpload({
url: 'http://localhost:13237/InputScoresDetailsDevelopedSunrise_Web.ashx?urlflag=4', //这里是服务器处理的代码
type: 'post',
secureuri: false, //一般设置为false
fileElementId: 'upload_file_id', // 上传文件的id、name属性名
datatype: 'json', //返回值类型,一般设置为json、application/json
async: false,
//data: {}, //传递参数到服务器
success: function (data) {
alert(typeof data);
console.log(eval(data));
console.log(eval("("+data+")"));
if (data.flag=='1') {
console.log("成功!");
sx++;
} else {
alert("文件成功处理出错!原因:" + data.error);
}
},
error: function (e) {
//console.log(e);
//alert("错误:上传组件错误,请检察网络!");
}
});
网上说的方法都试过了,data还是为undefined, typeof data还是defined
获取data的值
console.log(data.data)
if (data.data.flag=='1') {
console.log("成功!");
sx++;
}
接口已经看了啊,截图已经放在上面了,返回的是{ "flag": "1" , "filename": "SQLQuery1.sql"}
打印 data就是undefined 对吧
看看是不是跨域了,跨域了的话,就是network有值,但是取不出来,浏览器的安全机制
async设置为true试试,可能是异步请求你设置为同步了,数据还没返回过来你就打印肯定为空了
接口文件可以发一下不,我本地试试问题
先通过F12的控制台,点击网络,然后查看接口的响应返回值是否正确
你要去看接口啊,成功了应该给你返回什么呢