Javascript 带有传递变量的partialrefreshPost

Javascript 带有传递变量的partialrefreshPost,javascript,xpages,Javascript,Xpages,我有一个partialrefresh函数,希望通过传递不同页面的id来重用它,但它不起作用。是我把这个脚本弄错了还是partialrefresh无法删除变量 function ReloadPageId(Id) { XSP.partialRefreshPost("#{id:" + Id + "}", {}); } 我认为它不起作用,因为在计算表达式语言“#{Id:}”时,Id变量未定义 当您将'Id'传递到ReloadPageId函数时,它已经被计算出来了。要使用客户端javascript

我有一个partialrefresh函数,希望通过传递不同页面的id来重用它,但它不起作用。是我把这个脚本弄错了还是partialrefresh无法删除变量

function ReloadPageId(Id) {
   XSP.partialRefreshPost("#{id:" + Id + "}", {});
}

我认为它不起作用,因为在计算表达式语言
“#{Id:}”
时,
Id
变量未定义

当您将'Id'传递到ReloadPageId函数时,它已经被计算出来了。要使用客户端javascript获取计算Id,请尝试在XPage上放置一个输入标记,如下所示:

function ReloadPageId(Id) {
   XSP.partialRefreshPost(Id);
}

然后调用函数,如下所示:

function ReloadPageId(Id) {
   XSP.partialRefreshPost(Id);
}
ReloadPageId(document.getElementById(“getID”).value)

最后,您的函数将如下所示:

function ReloadPageId(Id) {
   XSP.partialRefreshPost(Id);
}

“它不起作用”是什么意思?请创建一个我的意思是它没有按预期刷新,或者响应任何错误消息。是的,“#{id:…}”已在服务器上计算,而执行在客户端。我不使用输入字段,只要在CSJS代码中的任何需要的地方调用带有
ReloadPageId(“#{id:theIdYouWant}”)
的函数即可。@KnutHerrmann感谢您添加了它。我习惯于使用输入字段作为解决方案,以避免在脚本库中对“#{id:…}”进行求值。