外部js文件中能使用struts2标签吗?
3个回答
展开全部
很遗憾,不可以。
如果你的标签写在了外部js里头,该文件不会被编译的。原因在于js是客户端解析的动态内容。不是服务器端的动态内容。
如果你的项目发生了这样的逻辑,必须调整布局,你可以:
从外部JS中抽取需要使用自定义标签的模块,移入JSP文件的<script>当中去。
或者,使用下面的参数传递机制(略显复杂)
http://bbs.csdn.net/topics/350238868
如果你的标签写在了外部js里头,该文件不会被编译的。原因在于js是客户端解析的动态内容。不是服务器端的动态内容。
如果你的项目发生了这样的逻辑,必须调整布局,你可以:
从外部JS中抽取需要使用自定义标签的模块,移入JSP文件的<script>当中去。
或者,使用下面的参数传递机制(略显复杂)
http://bbs.csdn.net/topics/350238868
展开全部
因为一个老项目也遇到这个问题,所以希望回答能帮助到其他人。
在web.xml里添加jsp servlet的js映射,在项目里或都tomat里添加都可以,就可以使用jsp应有的东西,同理,.html也可以。需要使用到的标签库引用进去就可以。
JS可以如下:开头位置引入相关东西,最好contentType设置为js类型。
web.xml
<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>*.jsp</url-pattern>
<url-pattern>*.jspx</url-pattern>
<url-pattern>/路径/*.js</url-pattern><!-- 不指定具体文件或路径为全部 -->
<url-pattern>*.html</url-pattern>
</servlet-mapping>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2016-06-14
展开全部
js代码写在jsp中,可以使用标签,它可以随着jsp一同解析。
js代码写在单独的文件中,就不能使用标签了。
jsp 取值代码参考如下:
<div class="dtree">
<p><a href="javascript: d.openAll();">open all</a> | <a href="javascript: d.closeAll();">close all</a></p>
<p><a href="javascript: d.add();">add</a>
<script type="text/javascript">
d = new dTree('d');
d.add(0,-1,'角色权限列表');
<c:forEach items="${li}" var="u" varStatus="v">
d.add(1,0,'Root');
d.add(${u.sys.sys_id},1,'${u.sys.sys_name}');
d.add(${u.page_id}+111,${u.sys.sys_id},'${u.page_name}');
</c:forEach>
document.write(d);
</script>
</div>
js代码写在单独的文件中,就不能使用标签了。
jsp 取值代码参考如下:
<div class="dtree">
<p><a href="javascript: d.openAll();">open all</a> | <a href="javascript: d.closeAll();">close all</a></p>
<p><a href="javascript: d.add();">add</a>
<script type="text/javascript">
d = new dTree('d');
d.add(0,-1,'角色权限列表');
<c:forEach items="${li}" var="u" varStatus="v">
d.add(1,0,'Root');
d.add(${u.sys.sys_id},1,'${u.sys.sys_name}');
d.add(${u.page_id}+111,${u.sys.sys_id},'${u.page_name}');
</c:forEach>
document.write(d);
</script>
</div>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询