使用$.ajax()进行跨域数据传输出现的问题,不知错在哪里?
html文件和js文件是放在同一文件夹同一目录下:结果是调用失败,执行的是error函数,而不是success函数,问题出在哪里?html代码:<!DOCTYPEHTML...
html文件和js文件是放在同一文件夹同一目录下:结果是调用失败,执行的是error函数,而不是success函数,问题出在哪里?
html代码:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
<script>
$(document).ready(function(){
$.ajax
({
type:"get",
url:"12.js",
async:false,
dataType:"jsonp",
jsonp:"callback",
jsonpCallback:"send",
success:function(json)
{alert(json.hello[0].hello)},
error:function()
{alert("获取json数据失败!")}
});
});
</script>
</head>
<body>
</body>
</html>
需要获取数据的"12.js"文件代码:
send
({
"hello":
[
{"hello":"boy"},
{"hello":"girl"},
]
}) 展开
html代码:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
<script>
$(document).ready(function(){
$.ajax
({
type:"get",
url:"12.js",
async:false,
dataType:"jsonp",
jsonp:"callback",
jsonpCallback:"send",
success:function(json)
{alert(json.hello[0].hello)},
error:function()
{alert("获取json数据失败!")}
});
});
</script>
</head>
<body>
</body>
</html>
需要获取数据的"12.js"文件代码:
send
({
"hello":
[
{"hello":"boy"},
{"hello":"girl"},
]
}) 展开
1个回答
2015-08-26
展开全部
如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用jsonp类型。使用这种类型的话,会创建一个查询字符串参数 callback=?
,这个参数会加在请求的URL后面。服务器端应当在JSON数据前加上回调函数名,以便完成一个有效的JSONP请求。如果要指定回调函数的参数名来取代默认的callback,可以通过设置$.ajax()的jsonp参数。
你的url是本地的,不是跨域,跨域不是单纯的设置jsonp而已。
追问
那如果我要在本地电脑里面使用jquery测试跨域传输文件应该怎么做才能实现?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询