http协议,一个在客户端,一个在服务器端,只能通过http协议,所以不能直接获得。你只能通过post或是get把数据发送到服务器端,然后服务器端取出数据,虽然你编写代码的时候觉得他们都在一个程序中,但是实际运行起来就不是在一起了,这个可要搞清楚哦,否则你都不知道什么需要放在服务器端,什么需要放到客户端去做都不知道了。

解决方案 »

  1.   

    有一个笨方法,可以通过url得到自己,然后再解析自己的流
      

  2.   

    javascript是在客户端(浏览器)运行的;而<% %>中的代码是在服务器端运行的。最后客户端得到的只有html和javascript代码,不可能得到<% %>中的代码。所以一个表单,javascript在浏览器端操作,java代码在服务器运行。另外,你为什么要这样做?
      

  3.   

    :(
    JSP use getCookies()
    Client web browser JavaScript set document.cookie
      

  4.   

    <% %>是在服务器端运行的,获取当前页面数据?你提交给本jsp页面,然后
    用request.getParameter(),呵呵,这样算不算本页面啊?
      

  5.   

    这个问题有很多人问过了,答案是不可以,client 的数据没有提交是无法传值给server端的变量的。
      

  6.   

    我的意思就是不用script,用java语句直接访问当前jsp页面的text框。
    这样也不可以?
      

  7.   

    建议你换一种思维方式去解决这个问题,你的要求是客户端脚本动态的与服务器脚本进行数据交互处理。假如看着是这两个层的交互的话。这种实现你可以通过在中间再加个层去实现。这个层当然就是通讯层了,实现的办法可以有:一,如果客户端支持ie较高的版本(5.5或者安装了msxml2.0以上),那么在客户端使用xmlhttp发送post或者get消息,在服务器端用servlet或者jsp捕获。加工以后返回数据给客户端的xmlhttp接收。客户端就可以利用xmlhttp接收到的数据进行再次组织为界面元素等等。
    二,如果客户端不支持ie较高的版本,那么可以采用在页面内嵌入applet的办法,applet和客户端脚本代码交互,并把脚本对jsp的要求通过applet用socket或者http的方式发送给服务器端的servlet或jsp,加工后的数据依据通过applet传递给客户端脚本。
    这两种办法其实都可以较好的完成任务。当然你可以把它封装为一个或多个层,只要你封装的好,可以把他看成是透明的,那么用起来就和你提出的要求是同样的效果。这些工作都相当琐碎,就看你有没有耐心去做了。
      

  8.   

    我的bean要用到text框里的数据,不能用script
      

  9.   

    whiteclude(天际) 我现在时间比较急,只有几天的时间了,你说的那些不也不太清楚,我现在需要一个简单的方法先顶一下,以后慢慢改也可以。
      

  10.   

    我在jsp里加了一个activex控件,在客户端运行时,他会取得一些关于机器的数据。
    <OBJECT CLASSID="clsid:F8351667-481E-47E3-ADA6-26A51C4028F4" style="VISIBILITY: hidden" ID="Dgaincert1" VIEWASTEXT codebase="GainCert.ocx">
    </OBJECT>
    <script>
    var data =Dgaincert1.get();
    document.enterprise.strValue.value =data;
    </script>
    出错
    document.enterprise.strValue.value =data;必须写在function里
    var data =Dgaincert1.get();却不能写在function里,否则他找不到DgainCert1对象.
    请教,我该怎么办??
      

  11.   

    document是在服务端,activex是在客户端,两者不能直接交换数据。
    我的理解是这样。
      

  12.   

    那我有什么简单的办法,可以把activex取得的数据传输给jsp页面?
    假如:
    我用一个me.jsp里面嵌入了一个activex控件,控件的目的是在客户端取得数据。me.jsp运行在服务端,activex运行在客户端。我怎样才能把activex的数据填入me.jsp的<input type=text name=getData>框????
      

  13.   

    没有弄清楚你复制的这个代码内容是什么。你的意思大概明白了一些。
    var data =Dgaincert1.get(); 这句话肯定是可以写到客户脚本的function里面去的,如果报错,你得联系上下文去看,并不是因为他放到function中就会报错。把jsp都复制出来吧
      

  14.   

    <%@ page contentType="text/html;charset=gb2312" %>
    <OBJECT CLASSID="clsid:F8351667-481E-47E3-ADA6-26A51C4028F4" style="VISIBILITY: hidden" ID="Dgaincert1" VIEWASTEXT codebase="GainCert.ocx">
    </OBJECT>
    <script language=javascript>
    function setPrivateKey()
    {
    var strValue =Dgaincert1.getPrivateKey();
    document.enterprise.strValue.value =strValue; return true;
    }
    <html>
    <title>工业企业增值税纳税申报销项、进项明细表</title>
    <body bgcolor="#FEFEE9" >
    <form method =get action ="http://10.80.0.193:8080/examples/jsp/enterpriseRefer.jsp" name=enterprise onsubmit= "return(setPrivateKey())">
                               <input type=hidden name =strValue>
    <center><input type="submit" name="Submit" value="提 交" style=" font-size: 24px; background: #FEFEE9; border-width: thin thin thin thin; border-color: #FEFEE9 #FEFEE9 #FEFEE9 #FEFEE9"></center>
    </form>
    </body>
    </html>是我错了,可以写在里面,可是submit后却没有调用enterpriseRefer.jsp,停在那里不动了,也没有异常,好像action=""这条语句就没运行,怎么回事
      

  15.   

    <script language=javascript>没有结尾,但你说可以按下submit按钮,那就是你没有把代码复制完全。这样看上去也没有什么错误。停在那里不动不一定是没有提交给enterpriseRefer.jsp,可能一直在等待jsp的response。你检查一下enterpriseRefer.jsp,看看是不是在jsp的request处理中出现了问题。还有你把strValue的值alert出来看看是否正确。