2 pengpengrose0406 pengpengrose0406 于 2014.12.19 09:23 提问

jquery中在div中load一个html页面内容出错

xhtml页面代码如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


Jquery菜单








  • 我是菜单2


    • 我是子菜单3

    • 我是子菜单4




<!--点击菜单时,在div中装载页面中的内容-->



需要在content这个div中装载 我是子菜单1中id指向的html页面,这两个页面是在一个路径下的,对应的jquery代码如下
$(".cmenu > li").click(function(){
var html= $(this).children("a").attr('id');
$("#content").load(html);
});
在Chrome浏览器报错
OPTIONS file:///D:/js/IdeaProjects/JqueryTrain/web/aaa.html No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access. jquery.js:2806
XMLHttpRequest cannot load file:///D:/js/IdeaProjects/JqueryTrain/web/aaa.html. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
在Firefox中报错
SyntaxError: An invalid or illegal string was specified
div.innerHTML = wrap[1] + elem + wrap[2];
不知道是跨域的问题还是什么,请大神赐教!

2个回答

showbo
showbo   Ds   Rxr 2014.12.19 09:28

本地file浏览不要用chrome,无法使用ajax,要发布网站后通过http来访问

firefox报错应该是你返回的内容有问题。是不是包含了html,head,body这种标签,要去掉

pengpengrose0406
pengpengrose0406 firebug中提示的变量html的值为"aaa.html"
3 年多之前 回复
pengpengrose0406
pengpengrose0406 $(".cmenu > li").click(function(){ var html= $(this).children("a").attr('id'); $("#content").load(html); });
3 年多之前 回复
az6161311
az6161311   2014.12.19 09:29

var html= $(this).children("a").attr('id'); 这段的值是获取URL吗?

az6161311
az6161311 回复pengpengrose0406: 还有一个问题,你的这个html 放在了项目中么?
3 年多之前 回复
az6161311
az6161311 回复pengpengrose0406: 建议不要把地址设为ID吧,你放在其他属性中好一些。
3 年多之前 回复
pengpengrose0406
pengpengrose0406 是的,html页面中的代码是<a href="#" id="aaa.html">我是子菜单1</a>,不知道是不是因为是xhtml的原因
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!