jquery ajax加载页面中的js代码如何执行?

86y 2013-03-07 11:53:32
demo.html

<script type="text/javascript">
function loadPage() {
$.ajax({
url: 'page.html',
type: 'post',
success: function (responseText) {
$('#div1').html(responseText);
}
});
}
</script>
<input type="button" onclick="loadPage();" value="加载" />
<div id="div1"></div>


page.html

<script type="text/javascript">
function test() {
alert('hello world!');
}
</script>
<input type="button" onclick="test();" value="执行" />


以上是2个html测试页面,实际使用的语言是asp.net c#

问题:
当demo页面加载page页面后,html代码就会被加载到div1容器里面,不过里面的javascript代码不会执行,点击执行按钮是无效的。

请问如何让加载的页面中javascript代码能够执行?

还有如果被加载的页面使用外部js文件又能否执行?例如<script type="text/javascript" src="/js/test.js"></script>
...全文
4152 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
shoppon 2013-11-13
  • 打赏
  • 举报
回复
引用 4 楼 charrys 的回复:
[quote=引用 1 楼 xuzuning 的回复:] http://www.cnblogs.com/fightLonely/archive/2011/06/14/2080355.html -- 解决方案
这个方法很好,能解决页面内部脚本的运行 不过如果被加载的页面是使用外部js文件就不行了?例如<script type="text/javascript" src="/js/test.js"></script> [/quote] 确实,这个时候咋办?
xuzuning 2013-03-08
  • 打赏
  • 举报
回复
网上也可以找到人家的做法
86y 2013-03-08
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
http://www.cnblogs.com/fightLonely/archive/2011/06/14/2080355.html -- 解决方案
这个方法很好,能解决页面内部脚本的运行 不过如果被加载的页面是使用外部js文件就不行了?例如<script type="text/javascript" src="/js/test.js"></script>
  • 打赏
  • 举报
回复
可以的。。jquery会自动解析加载页面的script代码块和加载的js文件。 注意不要用webkit核心的浏览器如chrome,chrome本地测试的时候ajax无法请求本地资源,需要搭建服务器
still_melody 2013-03-08
  • 打赏
  • 举报
回复
加载上html的时候 需要把绑定事件注册一下 success: function (responseText) { $('#div1').html(responseText); $('#执行按钮的id').bind("click",function(){alert('hello world!');}) }

52,792

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧