我希望每次页面成功时都在我的jsp页面中调用一个函数 通过Ajax调用加载。 请考虑以下事项:
|Main.jsp--------------------------------------|
| Link A Link B Link C |
| |
| -<div id="content">---------- |
| | | |
| | | |
| | | |
| | | |
| ----------------------</div>- |
| |
|----------------------------------------------|
每个链接都将调用LinkA.jsp,LinkB.jsp和LinkC.jsp 链接如下:
<sj:a href="%{urlA}" targets="content">LinkA</sj:a>
<sj:a href="%{UrlB}" targets="content">LinkB</sj:a>
加载jsp文件时必须调用常用的javascript函数。我可以在initial.js中编写这些通用文件,并将其添加到所有jsp页面。
<script type="text/javascript" src="<s:url value="initial.js" />"></script>
所有jsp文件都包含一个表单,我想在所有输入上操作一个常用函数,如下所示:
$( document ).ready(function() {
$("input").changeEncodingInput();
});
如果我在Main.jsp中添加此代码,则在加载LinkB.jsp和LinkC.jsp时,changeEncodingInput
将不适用
但我认为必须有更好的方法。
我正在寻找将initial.js文件添加到Main.jsp中,并且不要在每个页面中重复它。
struts 2 jquery插件似乎在内部管理Ajax事件。可能是内部发布的主题,我们可以订阅吗?
有什么想法吗?!
答案 0 :(得分:1)
经过一些评论后,我发现可以通过在main.jsp下面添加以下内容来实现最佳解决方案。 我希望框架发布了一个事件,但我找不到任何一个,希望框架能够在以后支持它!
$(document).ajaxStop(function() {
$("input[lang='fa']").changeEncodingInput();
});
感谢@Aleksandr的评论!