Struts2 param用javascript标记

时间:2010-08-04 13:50:55

标签: java javascript struts2

我是Struts2的新手,但现在已经困难了2天了。

基本上,我想在<s:param>内设置一个<s:url>标记,并在页面的其他位置设置div标记的内容。

<div id="div1">My value</div>
   <s:url action="myAction" var="url">
   <s:param name="param1">...content of div1...</s:param>
</s:url>

当我尝试在<s:param>代码中嵌入一些javascript调用时,不会评估javascript调用。

我的问题是:有没有办法在评估时将javascript调用绑定到<s:param>标记?

非常感谢

1 个答案:

答案 0 :(得分:2)

不幸的是,使用<s:param>标记是不可能的,因为在将页面提供给用户之前呈现此标记(即,它必须在链接到达Javascript可以接管的浏览器之前填充链接)。

尽管如此,您可以尝试使用加载处理程序。下面是一个jQuery示例,说明如何完成它:

$(document).ready(function(){
    var theDivContents = $('#div-id').text();
    var newLinkHref= $('#link-id').attr('href') + "&divContents=" + theDivContents;

    $('#link-id').attr('href', newLinkHref);
});

如果您使用Struts填充要用作链接参数的<div>,则另一个选项是在呈现链接之前捕获变量,然后直接在{{1}中使用它标签:

<s:param>