如何使用javascript中的参数调用SSJS方法

时间:2012-03-19 11:53:54

标签: methods hash parameters xpages serverside-javascript

我有一个包含散列的网址,例如http://www.acme.com/home.xsp#key=1234

当浏览器中加载上面的url时,我需要根据哈希值调用服务器端javascript。

我找到了几种方法来像这样重新启动哈希客户端

var key = getHashUrlVars()["key"];

所以我在onclientload事件中的客户端脚本中提供了密钥。

所以在同一个onClientLoad事件中,我现在需要调用我的服务器端javascript方法,所以我尝试了以下

'#{javascript:doStuff(key)}' 
'#{javascript:doStuff(' + key + ')}' 

..以及其他一些方法。但我无法让它发挥作用。

也许我可以使用XSP命令代替? 任何想法如何解决这个问题?

1 个答案:

答案 0 :(得分:4)

您可以在CSJS中执行XSP.partialRefreshPost并使用参数将数据发送到服务器:

var p = { "key": getHashUrlVars()["key"] }
XSP.partialRefreshPost( '#{id:_element_to_refresh_}', {params: p} );

要访问SSJS中的参数,请尝试以下方法:

doStuff( param.key )

您可以使用空div元素作为目标执行SSJS代码。或者您可以使用executeOnServer - 方法:http://xpages.info/XPagesHome.nsf/Entry.xsp?documentId=88065536729EA065852578CB0066ADEC

希望这有帮助

斯文