怎样将javascipt的值赋给java??

renwangxing 2008-06-18 06:18:05
比如jsp页面中(部分代码)
<head>
<script type="text/javascript">
var loginId=document.all.loginForm.loginId.value.trim();
</script>
</head>
<body>
......
<%
String cookieName=怎样将loginId的值赋给这里??;

Cookie cookie=new Cookie(cookieName, "Test_Content");
cookie.setMaxAge(10);
response.addCookie(cookie);
%>
<form id="loginForm" name="loginForm">
<input type="text" name="loginId" id="loginId">
..........
</form>
</body>
...全文
220 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
wargrey 2008-06-20
  • 打赏
  • 举报
回复
sagezk 和 spiniper 两位大哥不用再争论了.其实谁都没有理解错.
我认为,lz的问题仅仅是想把javascript的值传给jsp,而lz本人是希望能够直接交互,但是这显然不可能,所以我提出ajax,因为它是最接近的方式.
我想其他兄弟在提ajax的时候并没有可多的考虑lz的逻辑需求,而只是想得到基本的传值方法而已,所以没必要非得争出个ajax能不能解决这个问题的答案.
sagezk 2008-06-19
  • 打赏
  • 举报
回复
[Quote=引用 25 楼 spiniper 的回复:]
引用 23 楼 sagezk 的回复:
引用 13 楼 spiniper 的回复:
我说,你们为什么就认为ajax能够解决这个问题呢,ajax原理和普通提交原理是一样的,同样是提交响应的方式,只不过普通提交是同步的整个页面的更新,ajax只是把这个过程变成异步的局部的页面更新,但是原理还是http协议,还是服务器和浏览器,从本质上来说还是一样的。
似乎你们把ajax这个东西看得很神奇,好高深,很强大。其实不是那样的,它就是一根很简单的东西哦…
[/Quote]
其它认同,这句“一个东西的出现在于解决某一个问题,如果把应用设计的复杂性归加到某种技术上,我觉得这有点可笑”你误解我了,我可没这意思,新技术的出现往往是为了简化应用设计上的复杂,AJAX 就是如此,XMLHttpRequest 的出现一方面简化和替代了 iframe 方式的使用(虽然诸如浏览器历史没处理好),另一方面也引入和增强了 XML 数据交换形式,简化的是设计,复杂了的是应用领域,或者说扩展了应用领域,比如 Google Map。还有,多给新手点鼓励和学习 AJAX 的动力,干这行的最大的学习动力来自于求知欲和实践。
renwangxing 2008-06-19
  • 打赏
  • 举报
回复
ajax没有用过,所以,不好说,看到大家进行的探讨,感觉还要学的东西很多,我已经新开帖了,把这帖结了吧
KOOK_OKKO 2008-06-19
  • 打赏
  • 举报
回复
1.设置一个hidden
<input type="hidden" id="hid" >
2.然后在js里把loginId传给hid
3.然后用request.getParameter("hid")传给你的cookieName;

改过了,看看行不行

<head>
<script type="text/javascript">
var loginId=document.all.loginForm.loginId.value.trim();
document.loginForm.hid.value =loginId;
</script>
</head>
<body>
......
<%
String cookieName=request.getParameter("hid");//怎样将loginId的值赋给这里??


Cookie cookie=new Cookie(cookieName, "Test_Content");
cookie.setMaxAge(10);
response.addCookie(cookie);
%>
<form id="loginForm" name="loginForm">
<input type="text" name="loginId" id="loginId">
<input type="hidden" id="hid" >
..........
</form>
</body>
yeezai 2008-06-19
  • 打赏
  • 举报
回复
严格来说,不能将js值赋给java,要赋值给java必须将值提交给一个jsp或servlet,可通过get或post提交,也可ajax提交
同一个jsp里是不赋值的,jsp在服务器上运行,js在浏览器里运行,运行环境不一样,怎么赋值呢?一定要提交!!!
java资料太多?在网页中选中想收藏的文字(图片),右键选“收录到易载”,搞定!
树成 2008-06-19
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 sagezk 的回复:]
引用 13 楼 spiniper 的回复:
我说,你们为什么就认为ajax能够解决这个问题呢,ajax原理和普通提交原理是一样的,同样是提交响应的方式,只不过普通提交是同步的整个页面的更新,ajax只是把这个过程变成异步的局部的页面更新,但是原理还是http协议,还是服务器和浏览器,从本质上来说还是一样的。
似乎你们把ajax这个东西看得很神奇,好高深,很强大。其实不是那样的,它就是一根很简单的东西哦。我觉得ajax到了你们口中似乎…
[/Quote]
为什么你会认为我没有用过ajax呢,ajax出现就是为了解决在页面不刷新的条件下实现客户端与服务器数据交换的目的。如果是应用的复杂与神奇,说句实话,不运用ajax难道就不能设计出好的应用么,不可以复杂神奇么?一个东西的出现在于解决某一个问题,如果把应用设计的复杂性归加到某种技术上,我觉得这有点可笑,任何一种简单的技术都可以有一个复杂的应用,就像简单的自然数相加都没有被人们完全了解,哥德巴赫猜想不就是一个最好例子?
只要理解原理,再复杂的应用都能解决,那只不过是一个技术累加的过程,应用=技术+需求,只要你掌握好两者,什么都很容易解决的。
sagezk 2008-06-19
  • 打赏
  • 举报
回复
改用 cookie 解决不了根本问题,因为默认情况下浏览器就是通过 cookie 来维护登录用户的 session id 的,是不是你的哪个模块的 Bug 现在光从行为上分析不好说,你可以通过记录每次请求的请求头和响应头信息的方法来跟踪 session 失效的原因,弄清哪儿的原因再解决,否则只能越弄越糟,更改实现老问题没解决可能还会引入新的 Bug。
sagezk 2008-06-19
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 spiniper 的回复:]
我说,你们为什么就认为ajax能够解决这个问题呢,ajax原理和普通提交原理是一样的,同样是提交响应的方式,只不过普通提交是同步的整个页面的更新,ajax只是把这个过程变成异步的局部的页面更新,但是原理还是http协议,还是服务器和浏览器,从本质上来说还是一样的。
似乎你们把ajax这个东西看得很神奇,好高深,很强大。其实不是那样的,它就是一根很简单的东西哦。我觉得ajax到了你们口中似乎已经是一种奇迹般的飞跃了,他不属于http了超越了web的划时代的进步了。我感觉纳闷
[/Quote]
局部的页面更新?很简单的东西?你要是真正用过AJAX就不会纳闷了,简单的原理没错,复杂神奇的是应用,虽没有HTTP和WEB那样具有划时代的意义(你的意思是只有颠覆整个WEB的技术才算强大,高深外加神奇?),但确实能增进用户的使用体验(用用126邮箱),再有,AJAX可以连局部页面更新都没有的前提下与Server通讯,异步的本质是后台进行的并发HTTP请求和响应处理。
树成 2008-06-19
  • 打赏
  • 举报
回复
应该是你设计的某个模块存在问题,把session值移出掉了,也可能是使服务器问题,在某个时刻服务器自动重新部署,造成session全部丢失,也有可能是客户端问题,然而客户端操作问题情况就比较复杂了,可能是客户端完全禁用cookie,这样一来session也无法用。也有可能客户端实用浏览器的时候经常打开了一个新的会话,但是客户自己不知道,也可能是浏览器存在问题。
对于保存到cookie也是由服务器做的,不一定能够解决问题的。
renwangxing 2008-06-19
  • 打赏
  • 举报
回复
呵呵,看来,实现起来难啊,谢谢各位同学了,java的值赋给javascript容易,反过来,难了
xql80329 2008-06-19
  • 打赏
  • 举报
回复
<% 
String cookieName=怎样将loginId的值赋给这里??;

Cookie cookie=new Cookie(cookieName, "Test_Content");
cookie.setMaxAge(10);
response.addCookie(cookie);
%>
看了<% %> 这对符号 还能说是javascript 吗?
healer_kx 2008-06-19
  • 打赏
  • 举报
回复
Request对象啊。更多的内容可以用JSON格式。
berlou 2008-06-19
  • 打赏
  • 举报
回复
这不是脱裤子放屁么? 开玩笑了阿, 别介意。

[Quote=引用 15 楼 KOOK_OKKO 的回复:]
1.设置一个hidden
<input type="hidden" id="hid" >
2.然后在js里把loginId传给hid
3.然后用request.getParameter("hid")传给你的cookieName;

改过了,看看行不行

HTML code
<head>
<script type="text/javascript">
var loginId=document.all.loginForm.loginId.value.trim();
document.loginForm.hid.value =loginId;
</script>
</head>
<body>
......
<%
String cookieNam…
[/Quote]
xiezongzhou 2008-06-19
  • 打赏
  • 举报
回复
众兄弟,我这是在应用的登陆页面设置cokie的,想用jsp来做,所以,一般登陆页面都有一个用户名输入框,一个密码的输入框和一个提交按钮吧,我是想当点击提交按钮的时候,把用户名输入框的输入值作为cokie的名字,我试过了,在提交按钮设置一个onclick事件,把值赋给声明的一个javascript变量,是可以的,关键是怎么样把这个值赋给java变量cookieName啊??



首先你这种想法就是不对的,做了不必要的工作,干什么非要把javascript 的值传递给JAVA(万不得一的时候可以用AJAX xmlhttprequest)
你可以把当前的页面的值提交到下一个页面的时候设置Cookie(不过这样做违背了MVC的开发模式,最好是不要在jsp中写代码,全部都用标签)
写程序要懂得变通,开发时要节省时间
renwangxing 2008-06-19
  • 打赏
  • 举报
回复
楼上的几位同学,其实我的需求是这样的,之前用session保存用户的登录信息,但是由于偶然有出现一登录就提示会话消失,无论点击哪个模块都出现这种情况,web.xml配置的session时间是360000,只是偶然才出现这种情况,可能五百次登陆会出现一两次这样的情况,客户对此不满意,所以,想改用cookie记录会话,不知cookie的设置时候和sesion差不多?原来用session的时候,是判断用户登陆成功才写进session,如if(success)session.setAttribute("UserBean",UserBean),然后再写一个专门验证session是否过期的jsp页面,然后,被include进很多页面,内容就是判断session是否为空,如果不为空,就从session里面取出用户信息,
现在改用cookie来设置,怎么实现?话题转移了,我另开新帖讨论这个问题吧

http://topic.csdn.net/u/20080619/09/c19374dd-ff5a-4fe2-aad6-c52a27559ff3.html
ZX_ARES 2008-06-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 renwangxing 的回复:]
众兄弟,我这是在应用的登陆页面设置cokie的,想用jsp来做,所以,一般登陆页面都有一个用户名输入框,一个密码的输入框和一个提交按钮吧,我是想当点击提交按钮的时候,把用户名输入框的输入值作为cokie的名字,我试过了,在提交按钮设置一个onclick事件,把值赋给声明的一个javascript变量,是可以的,关键是怎么样把这个值赋给java变量cookieName啊??

[/Quote]
弄个表单,建一个hidden的值,一提交不就行嘛。
其实说到根上,AJAX也是提交了,形式不同罢了
树成 2008-06-18
  • 打赏
  • 举报
回复
我说,你们为什么就认为ajax能够解决这个问题呢,ajax原理和普通提交原理是一样的,同样是提交响应的方式,只不过普通提交是同步的整个页面的更新,ajax只是把这个过程变成异步的局部的页面更新,但是原理还是http协议,还是服务器和浏览器,从本质上来说还是一样的。
似乎你们把ajax这个东西看得很神奇,好高深,很强大。其实不是那样的,它就是一根很简单的东西哦。我觉得ajax到了你们口中似乎已经是一种奇迹般的飞跃了,他不属于http了超越了web的划时代的进步了。我感觉纳闷
renwangxing 2008-06-18
  • 打赏
  • 举报
回复
ajax没有学过,不知怎么用,小晓同学,设置cookie不是在登陆页面,而是首页设置吗?
我这个应用是登陆页面登陆成功进入首页的
phoenix_dt 2008-06-18
  • 打赏
  • 举报
回复
ajax没搞过可以吗?以后学学看!
renwangxing 2008-06-18
  • 打赏
  • 举报
回复
搞了一个晚上,还是没有什么结果,失败!
加载更多回复(8)

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧