gpt4 book ai didi

java - 将 Struts Tiles 属性插入 JavaScript 函数

转载 作者:行者123 更新时间:2023-12-01 16:04:48 25 4
gpt4 key购买 nike

我正在尝试将 Struts Tiles 属性插入到 JavaScript 函数中。 JS 函数在加载时调用,并且应允许某些 JSP 页面向该函数附加附加代码。

模板如下所示:

<html>
<head>
<script>
function onLoad(){
...
<tiles:insert attribute="html.head.onLoad" ignore="true" />
...
}
</script>
</head>
</html>

实现该模板的 JSP 站点如下所示:

<html> 
<head>
<script>
<tiles:put type="string" name="html.head.onLoad">
document.getElementById("report").style.height = (getWindowHeight() - 200) + "px";
</tiles:put>
...
</script>
</head>
</html>

不幸的是,该属性没有插入到 JS 函数中,而是插入到 HTML 头部外部的某个位置。

你知道我如何实现目标吗?

最佳答案

我只需在 JavaScript 代码中的“”之间插入属性 name 即可实现此目的。就我而言(例如),我有:

模板(即:filterTemplate.jsp):

<div><a class="btn" id="btn1"><i class="fa fa-filter"></i></a></div>

<div>...</div>

<div id="<tiles:insertAttribute name='myDiv'/>"/>
<script>
$('#btn1').click(function({
$('html, body').anímate({
scrollTop: $("<tiles:insertAttribute name='myDiv'/>").offset().top
}, 2000);
});
</script>

在tiles.xml中:

<definition name="resultTable" template="filterTemplate.jsp">
<put-attribute name="myDiv" value="" />
</definition>

扩展定义:

<definition name="resultTableA" extends="resultTable">
<put-attribute name="myDiv" value="#listDogs" />
</definition>
<definition name="resultTableB" extends="resultTable">
<put-attribute name="myDiv" value="#listCats" />
</definition>

最后在其他jsp中:

<div class="panel-body collapse">
<tiles:insertAttribute name="resultTableA"/>
</div>

使用apachetiles 2.0.6

关于java - 将 Struts Tiles 属性插入 JavaScript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2848736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com