我有2个html文件:test1和test2
test1.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script language="javascript" type="text/javascript" src="lib/jquery-1.3.2.min.js"/></script>
<script language="javascript" type="text/javascript">
$(document).ready(function(){
$('#content').empty().load('test2.html');
});
</script>
</head>
<body>
<div id="content"></div>
</body>
</html>
test2.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script language="javascript" type="text/javascript" src="lib/jquery-1.3.2.min.js"/></script>
<script language="javascript" type="text/javascript">
$(document).ready(function(){
alert(202);
});
</script>
</head>
<body>
test
</body>
</html>
当我运行test1时,它只显示“test”而不显示alert.So它不能接受嵌入式jquery。那我该怎么做呢?请帮忙。
答案 0 :(得分:2)
load function总是过滤掉引用的HTML中的所有内容,但加载时的body元素除外。尝试将脚本移动到body元素中,看看是否有帮助。
在jQuery 1.2中,您现在可以指定一个 URL中的jQuery选择器。这样做 将过滤传入的HTML 文档,只注入元素 与选择器匹配。语法 看起来像“url #some&gt; 选择器“。默认选择器”body&gt; *“ 永远适用。如果URL包含 空间应该是逃避()d。见 更多信息的示例。
请注意,您也可以在加载时应用选择器,以进行更广泛的过滤。
答案 1 :(得分:0)
您需要将脚本放入要加载的页面上的<body>
。
或者,您可以考虑使用load()
函数的回调来显示警报
$(document).ready(function(){
$('#content').empty().load('test2.html', function() { alert(202); });
});