Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在子jsp中使用父页面javascript文件?_Javascript_Jsp - Fatal编程技术网

如何在子jsp中使用父页面javascript文件?

如何在子jsp中使用父页面javascript文件?,javascript,jsp,Javascript,Jsp,我的父jsp包含两个div <html> <script src="a.js"/> <body> <div id="child1"></div> <div id="child2"></div> </body> </html> 我的孩子页面是 <html> <body> child_1 </body> </html> 儿童1 使用a

我的父jsp包含两个div

<html>
<script src="a.js"/>
<body>
<div id="child1"></div>
<div id="child2"></div>
</body>
</html>

我的孩子页面是

<html>
<body>
child_1
</body>
</html>

儿童1
使用ajax调用,我正在将子页面加载到父div中,并希望使用父页面加载的子页面中相同的js文件,方法是使用任何方法引用该文件,而不是手动将其包含在子页面中,因此请任何人帮助我,因为我遇到了很大的麻烦。

在ajax调用中:

$.get('/home',
    {script:'resolvedJSLink'},
    function(){$('#child1').html(data);}
);
在child1.jsp中:

<html>
    <script src='<%= request.getParameter("script") %>'/>
    <body>
        child_1
    </body>
</html>

儿童1
对于这种情况,另一种解决方案可能是动态加载脚本:

在ajax调用中:

$.get('/home',
    {script:'resolvedJSLink'},
    function(){$('#child1').html(data);}
);
在child1.jsp中:

<html>
    <script src='<%= request.getParameter("script") %>'/>
    <body>
        child_1
    </body>
</html>

儿童1


对于这种情况,另一种解决方案可能是动态加载脚本:

创建头文件并重构项目。这里的例子:但是我必须将这个标题添加到我不想要的子页面。但是我必须将这个标题添加到我不想要的子页面。实际上,我的模板已经制作好了,当我使用这个模板时,它会在父页面上添加一个完整的页面,所以我不会在子页面上使用模板,但这种方法的问题是我无法在子页面上添加脚本文件,因为我的js文件名是动态的,它将只在父jsp中解析,而不会在子页面中解析。那么,有什么方法可以使用父页面中已经准备好的js链接呢?在ajax调用中添加带有脚本链接的参数,然后在子页面中从请求中获取并作为脚本加载。我不知道如何做。可以使用详细说明。创建头文件并重构您的项目。这里的例子:但是我必须将这个标题添加到我不想要的子页面。但是我必须将这个标题添加到我不想要的子页面。实际上,我的模板已经制作好了,当我使用这个模板时,它会在父页面上添加一个完整的页面,所以我不会在子页面上使用模板,但这种方法的问题是我无法在子页面上添加脚本文件,因为我的js文件名是动态的,它将只在父jsp中解析,而不会在子页面中解析。那么,有什么方法可以使用父页面中已经准备好的js链接呢?在ajax调用中添加带有脚本链接的参数,然后在子页面中从请求中获取并作为脚本加载。我知道如何做,可以使用详细说明。我这种方法需要解析js文件的链接,但文件链接在父jsp的运行时解析。我可以在父jsp中获取加载的js文件的名称吗?可以,因为您在父jsp中使用它。若要在处理父文件的运行时获取,必须用解析js文件的方法替换“resolvedJSLink”。或者使用jQuery和选择器在客户端获得这个名称,即$('script').attr('src')。它几乎解决了我的问题,但是$('script').attr('src')给了我第一个加载的javascript文件名。其他脚本文件呢。例如,如果我想得到第二个js文件的名称,那么我如何才能得到它呢?您可以用如下的src值创建数组:
var src=[]$('script').each(函数(){src.push($(this.attr('src'));})
I这种方法我需要解析js文件的链接,但文件链接在父jsp的运行时解析。我可以在父jsp中获取加载的js文件的名称吗?可以,因为您在父jsp中使用它。若要在处理父文件的运行时获取,必须用解析js文件的方法替换“resolvedJSLink”。或者使用jQuery和选择器在客户端获得这个名称,即$('script').attr('src')。它几乎解决了我的问题,但是$('script').attr('src')给了我第一个加载的javascript文件名。其他脚本文件呢。例如,如果我想得到第二个js文件的名称,那么我如何才能得到它呢?您可以用如下的src值创建数组:
var src=[]$('script').each(函数(){src.push($(this.attr('src'));})