0

我正在尝试从 jquery 函数传递参数。一切都很好,但唯一的问题是传递参数值rowObject.themeScreenshot

 <script type="text/javascript">
   function formatLink(cellvalue, options, rowObject)
     {    
        var para=rowObject.themeScreenshot; //here value is coming fine 
        alert("Json object value-"+para);  //correctly i am geting the value of para.
        return "<a style='cursor:pointer;' onClick='javascript:openDialog("+cellvalue+")'><img src='<s:url action='ImageAction' namespace='/myimage/secure'><s:param name='imageId'>"+para+"</s:param></s:url>'></a>";
     //this is returning url with empty imagId  output in url:-http://localhost:8080/visionbooks/myimage/secure/ImageAction?imageId=  
   }

我想要的是:-

http://localhost:8080/visionbooks/myimage/secure/ImageAction?imageId=anyvalue

但目前我得到的输出是:

http://localhost:8080/visionbooks/myimage/secure/ImageAction?imageId="+para+" 变量名作为参数值传递。为什么?

请帮我解决这个问题。

4

1 回答 1

0

Struts 2 tags在页面渲染时进行评估,这远在您的脚本运行之前。

如果您检查页面的源代码,您会看到这些标签已被转换为常规的 html 元素。因此,para不会评估 javascript 变量。

您可以尝试将退货行更新为

return "<a style='cursor:pointer;' onClick='javascript:openDialog("+cellvalue+")'><img src='<s:url action='ImageAction' namespace='/myimage/secure'></s:url>" + "?imageId="+para+ "'></a>";
于 2012-12-18T01:58:14.363 回答