我正在尝试通过ajax请求处理一个jsp页面并将其插入到这样的主页中。
$.get('链接到页面', function(data) { $('#formContainer').html(data); });
在我从服务器返回的 jsp 页面中,有一些我想包含在 html 中的 javascript 代码,并将处理表单事件(我有很多表单,每个表单都有不同的功能)
似乎没有将 javascript 代码添加到带有 html 代码的页面中。
有什么办法可以做我想要的吗?
谢谢。
我正在尝试通过ajax请求处理一个jsp页面并将其插入到这样的主页中。
$.get('链接到页面', function(data) { $('#formContainer').html(data); });
在我从服务器返回的 jsp 页面中,有一些我想包含在 html 中的 javascript 代码,并将处理表单事件(我有很多表单,每个表单都有不同的功能)
似乎没有将 javascript 代码添加到带有 html 代码的页面中。
有什么办法可以做我想要的吗?
谢谢。
$.get()
将去除script
标签(请参阅文档);
您可以使用load()
which 将尊重脚本。您需要在它影响的 html 之后放置脚本,因为document.ready
它已经在主页中出现。
$('#formContainer').load('link to page')
API 参考:http ://api.jquery.com/load/
文档解释脚本执行
是的,正如您所注意到的,<script>
当您将标签放入.html()
. 我找到的唯一解决方案是遍历容器,找到所有脚本标签,然后手动执行它们。
编辑: charlietfl 有一个优越的解决方案(我以前对此一无所知)。我会将这篇文章留给无法使用该解决方案的任何人。