Как мне вызвать метод SSJS с параметрами из JavaScript - PullRequest
0 голосов
/ 19 марта 2012

У меня есть URL-адрес, содержащий хэш, например http://www.acme.com/home.xsp#key=1234

Когда указанный выше URL-адрес загружается в браузер, мне нужно вызвать javascript на стороне сервера, основываясь на значении в хэше.

IЯ нашел несколько способов получения клиентской части хеша, например,

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

, поэтому у меня есть ключ, доступный в моем клиентском скрипте в событии onclientload.

То же самое в событии onClientLoadТеперь мне нужно вызвать свой метод javascript на стороне сервера, чтобы я попробовал следующие

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

.. и несколько других способов.но я не могу заставить его работать.

может быть, есть команда XSP, которую я могу использовать вместо этого?есть идеи как это решить?

1 Ответ

4 голосов
/ 19 марта 2012

Вы можете сделать XSP.partialRefreshPost в CSJS и использовать параметры для отправки ваших данных на сервер:

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

Надеюсь, это поможет

Свен

...