当前位置: 代码迷 >> Lotus >> 怎么将javascript中的变量赋给lotusscript中的变量
  详细解决方案

怎么将javascript中的变量赋给lotusscript中的变量

热度:90   发布时间:2016-05-05 07:01:00.0
如何将javascript中的变量赋给lotusscript中的变量
如题,大家可以一起来讨论看看。
我写了一个简单的agent,部分代码如下

dim session as new notessession
dim doc as notesdocument
dim argument as string

argument = getReturnValue


getReturnValue方法如下:
function getReturnValue
  Dim return_val as string

  Print |<script language="javascript">|
  Print |var str_test = "aaaaa"|  
  Print |</script>|
   
  getReturnValue = ????[怎么样写才可以得到js的变量str_test的值?]
end function

我试过以下一种方法,但是不行。

print """"+ return_val +""" = str_test"

------解决方案--------------------
如果是B/S的话,代码根本不应该这么写的。javascript运行在客户端,而lotusscript运行在服务器。你那个getReturnValue函数,服务器只是输出一段HTML文本到客户端浏览器,浏览器运行这段代码才得到str_test 的值,这时候程序已经在客户端浏览器上了,只有把str_test 的值写到字段(或者URL)里,然后提交页面才可以发回服务器(Ajax技术允许不提交页面与服务器交互是个例外)。
------解决方案--------------------
你的程序设计有问题。
如楼上所说这是前后端通信的问题,而且就算前端用Ajax将值传递给后端同一个agent,但是触发的是这个agent的另一个运行实例,和你当前print js的agent没有任何关联,除非用doc等临时容器承载传递数据,否则无法视线。
  相关解决方案