在一个*.js的文件中我要得到request对象怎么做?
HttpServletRequest r=new HttpServletRequest();
这么写会出错。该怎么写呢???

解决方案 »

  1.   

    一个是客户端一个体服务端没有直接得的的函数..(至少我不知道)你可以
    <div><$requestScope.***></div>
    然后再用DOCUMENT得到INNERHTML
      

  2.   

    貌似不可以 
    但可以用Ajax
      

  3.   

    楼主有没有搞错,一个是javaScrpit语言,一个java语言,你怎么能够通过js 得到一个java对象呢,
    我猜楼主是想得到request对象中的参数值吧...
      

  4.   

    是啊。在js文件中怎么得到啊?request里面是一个List,在js中我用${}表达式会报错,还有什么办法啊。
    3楼的用ajax,倒是可以得到request。快疯了。我不会写脚本。晕死了。脚本一点点都不会。各位老大支招。
    我就是想把我后台的存到list中的数据输出到表格中,要做无刷新的,也就是要用ajax,后台的值已经到前台了,
    可是我不懂怎么输出来。脚本这边卡住了。
      

  5.   

    这样说吧
    request是服务器运行好了发给你IE的而javascript是你本机IE上面自己运行的完全不同的两样东西
    如果你真的要这样的话 
    如果是简单类的话 比如:new User(int id,String name)
    这些的话只有吧request内对象的每个成员先付给html的form中 比如:hidden
    然后再用javascript读取 每个成员再在js中重写组合起来
      

  6.   

    教你个笨方法,
    <% //创建一个list
       list = request.getAttribute("xxx");
       //然后在把list的内容迭代出来,放在在一个String中,中间用#(符号随便,要内容里面没有的符号)隔开
       String str = "内容1#内容2#内容3#内容4";
    %><script>
    var str = "<%= str %>";//不要用jstl
    var arrayString = new Array();
    arrayString = str.split("#");//这样就在js中得到了list转化过来的数组,哈哈,比较笨的方法!!!
    </script>
      

  7.   

    既然值在传到页面,在request中,那就用标准标签取值就行了啊
      

  8.   

    我也想用标签取,我说说我的需求吧。
    我是想用dwr实现无刷新分页,在页面上我有上移下移的功能,要求上移下移也不能刷页面,
    我现在值已经在回调函数中了,可是我不懂页面要怎么控制?在javascript里面是可以用标签之类的,可是我在*.js的文件中
    不能用那些服务器的标签。唉。多谢大家了。给我点思路........
      

  9.   

    服务器就不解析 js文件  只能在jsp里把值定义个js变量 在js文件里用
      

  10.   

    要是复杂对象只能用ajax,因为用js一次获得全部数据的话,这样只能传递基本对象。用ajax直接用json就行了。
    页面上下翻页的功能就是写一个按钮,加上范围判断。即首页、尾页之类的。当点击的时候出发ajax的方法。方法分别实现上一页、下一页查询功能。
      

  11.   

    我想从servlet里用request的请求获得用户登陆的用户名,有什么好的办法实现吗?想用session 
      

  12.   

    我想LZ应该会用到JS中的XMLHttpRequest对象通常说的AJAX处理方式
    搜索这个关键字有你要的
      

  13.   


    用函数传值试试
    function mainInit(duty)
    {
        alert(s);
        ........
    }
    <body onLoad="mainInit('<%=duty%>')"> 不知道行不行
      

  14.   

    用ajax把,能实现js和servlet数据的互访。。
      

  15.   

    js文件中的代码调用一个方法获取一个var,这个方法在载入这个js的jsp中声明和实现,该方法返回一个<%=request.getParameter("~");%>即可
      

  16.   

    这位前辈,您说的好像有点符合我的意思了。我试试用json吧。问题出就出在我不会写脚本。有人给我讲过在dwr也就是ajax的回调函数中直接把我上移下移的两条数据该掉就可以了,没有必要从数据库中完全取出。这种不知到行不行?我试着取那两条的id好像我得不到。
      

  17.   

    这两个完全是没有关系的
    如果想把request对象传到js中,这个是不可能的,因为js静态客户端代码。
    你只能在服务器端生成文本的时候用request什么ajax可以传request,搞错了吧
    不可能的事
      

  18.   

    HttpServletRequest r=new HttpServletRequest();
    这是java服务器端的代码写在js里面肯定报错啊
    既然用了dwr干嘛还要从request里面取值,直接list[i].name就可以得到其值了啊
    js里面是不可能得到服务器端request对象的类似于*.html中不能用<%=value%>因为它们都是静态的不像jsp是由jsp_servlet.java输出out.write("<Html></html>")所以要想在js里面得到request对象那是不可能的不过可以ajax但需要在服务器端写如下代码:PrintWrite p = Servlet.getOut();
    p.write("data");最后服务器端和客户端交换还是要通过输出流
      

  19.   

    我也遇到了这个问题,在java代码中将list组装成jason字符串,在页面上解析jason串就可以了。