在velocity模板中访问jquery/javascript变量

在velocity模板中访问jquery/javascript变量,javascript,jquery,velocity,confluence,Javascript,Jquery,Velocity,Confluence,我正在尝试获取velocity和一个脚本来传入并返回一个变量 #set ( $test = "" ) ... <script> var someVariable = ''; [some stuff happens and someVariable gets set] #set ( $test = someVariable ) </script> ... $test #set($test=”“) ... var someVariable='';

我正在尝试获取velocity和一个脚本来传入并返回一个变量

#set ( $test = "" ) 
...
<script>
    var someVariable = '';
    [some stuff happens and someVariable gets set]
    #set ( $test = someVariable )
</script>
...
$test
#set($test=”“)
...
var someVariable='';
[发生了一些事情,设置了一些变量]
#set($test=someVariable)
...
$test
上面的“$test”将打印出someVariable设置为的内容

如何从脚本标记内部导出变量并将其返回给velocity模板进行处理


为了了解更多的上下文,我一直在尝试通过以下方式在confluence中创建一个下拉宏。我希望能够使用保存的下拉项,并使用该下拉项修改其他宏。

Velocity是一种服务器端编译模板语言,而JavaScript是在客户端执行的。当您的JavasScript运行时,Velocity代码已经被编译、转换为HTML并发送到客户端,因此您无法直接执行您想要的操作

相反,您需要直接修改DOM。例如,使用jQuery:

...
<script>
    var someVariable = '';
    [some stuff happens and someVariable gets set]
    jQuery(".myClass").text(someVariable);
</script>
...
<div class="myClass">&nbsp;</div>
。。。
var someVariable='';
[发生了一些事情,设置了一些变量]
jQuery(“.myClass”).text(someVariable);
...
此外,您还需要确保JavaScript在(或使用特定于Atlassian的
AJS.toInit()
)之前不会运行