如下所示, UserID是javascript里Test方法的参数, 现在想在java代码那里引用它, 可不可以? 怎么写?...
<script LANGUAGE="JavaScript">
function Test(UserID)
{

var TIDs; <%
   //在这里怎么样引用上面Test方法里的UserID?
 Person per = People.getPerson(12);
%>
}
</script>
...

解决方案 »

  1.   

    首先要搞明白java代码,是在服务器段执行的,
    javascript是客户端代码。
    所以javascipt中使用的java的代码只能是从服务器段返回的字符串或数值。<%
      //在这里怎么样引用上面Test方法里的UserID?
    Person per = People.getPerson(12);
    %> 这里不能使用UserID作为一个参数,因为客户端无法执行服务器端的代码
      

  2.   

    你的 JavaScript 结果作为一个参数提交到 Servlet,或者一个JSP子窗口,再提取其参数用Java进行处理。
      

  3.   

    父窗口JavaScript代码
    // --------------------------------------------------------
    <script language="JavaScript">
          function myfun()
          {
            a = 10;
            b = 20;
            c = a + b;
            location = "message_dialog.jsp?value=" + c;
          }
        </script>
        <input name="" type="button" onClick="myfun();">
    //-----------------------------------------------------
      

  4.   

    子窗口 message_dialog.jsp 代码
    <%
    String aa = request.getParameter ("value");
    if (aa == null)
    {
    ......
    %>这样操作你的 JavaScript 结果就可以被 Java 来处理了
    javascript 内的 location 的操作也可以指向一个 servlet