简单的jQuery.load示例不起作用
Simple jQuery .load Example Not Working
我相信这是一个相当基本的问题,但我对jQuery相对陌生,所以希望有人能帮忙。
基本上,我需要将一个HTML片段加载到一个页面中。当代码段只包含HTML时,这很好,但当它包含脚本时就不行了。
为了清晰起见,我已将代码精简到最低限度。这是index.html:
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
</head>
<body>
<h1>Heading</h1>
<div id="banner"></div>
<script>
$(document).ready(function(){
$('#banner').load('banner.html');
});
</script>
</body>
</html>
banner.html只包含以下内容(例如):
<h2>Subheading</h2>
<script>
document.write('Hello');
</script>
脚本被执行,但由于某种原因,它去掉了index.HTML和banner.HTML中的其余HTML(即,它只显示"Hello",而不显示其他内容)。
非常感谢您的帮助!
document.write
在页面加载后写入文档,同时覆盖文档中当前的所有其他内容,这就是为什么最终只得到字符串"hello"的原因。
只需删除文档即可写入:
<h2>Subheading</h2>
<p id="test"></p>
<script>
document.getElementById('test').innerHTML = 'hello';
</script>
这是加载banner.html时的becuase。。banner.html中的脚本被执行,它在您的文档中写"hello"(这里的文档是您的整个index.html)
理解这一点的一种方法是替换banner.html的某些内容,而不是整个文档。
banner.html
<h2>Subheading</h2>
<div id="divID"></div>
<script>
$('#divID').html('hello'); //using jquery .. gets the element with id as divID and replace the HTML
</script>
这里我只替换id为"divID"的div,而不是替换enrite文档
相关文章:
- jQuery css可见性在load方法中不起作用
- for循环中的jquery.load()不起作用
- 使用 jQuery .load() 加载的内容不起作用
- Ajax load在chrome中不起作用,而在Fire fox中工作
- JQuery '.load()' 不起作用
- Jquery .load() 函数在 Chrome 上不起作用
- 为什么我的 jquery .load() 函数不起作用
- Windows.load 函数在 IE 浏览器中不起作用
- CSS :悬停在 jquery load();之后不起作用
- jquery load 函数在我的代码上不起作用.这是为什么
- JS不起作用,即使在使用window.load之后也是如此
- JQuery .load() 函数不起作用
- Jquery (ajax) load function 不起作用
- ChartJS在jquery.load()(AJAX)加载的.php中不起作用
- $.load()链接不起作用
- jQuery load()函数不起作用
- $(“#myElement”).load(url)在插入到表行时不起作用
- jQuery load()方法不起作用
- Javascript在使用.load()加载的DIV中不起作用
- 如果页面有重定向,window.load将不起作用