如何在jsp中引用js变量

请问 如何在jsp中引用js变量 例如var v =xxx;
如何将这个 js变量 存取到jsp 的request中

[quote]JSP数据和JavaScirpt数据交互使用问题的一种解决方法
对于WEB程序来说,前端(JavaScript)和后端(JSP/Servlet)是没法共用数据的,只能是后端程序(JSP)把数据输出,生成页面到前端,这时候生成的页面中的JavaScript代码才有可能得到所谓jsp的数据。同样的,只有把JavaScript里的数据提交给后端JSP代码,JSP程序中才能得到JavaScript的数据。

那如何实现在页面的JavaScript中使用jsp中的数据或是在jsp中使用页面的JavaScript数据呢?

一、页面中的JavaScript的数据如何提交给后台的jsp程序
① 可以将JavaScript的数据以xxx.JSP?var1=aaa&var2=bbb的形式作为URL的参数传给JSP程序,此时在jsp中用
<%String strVar1=request.getParameter("var1");%>就可以获取到JavaScript脚本传递过来的数据;
② 使用JavaScript通过在表单里加入隐藏域信息,然后用表单提交的方式把数据传递给JSP程序。

参考下面的脚本:

<!-- /*************************************************************** JavaScript脚本,放置在页面中的任何位置都可以 insertclick()函数获取JSP传递到页面中的变量varMC, 然后就可以在JavaScript中修改这个变量的值,再通过 post的方式提交给JSP程序来使用。 ***************************************************************/ function insertclick(){ var1 = document.all.mc.value; //获取页面form中的变量值 var1 = var1 + "名称"; document.insertForm.submit(); } //-->

二、页面中的JavaScript的数据如何使用后台的JSP程序的数据
这个比较简单,直接在JavaScript脚本中用<%=strVar1%>就可以把jsp程序中的数据传递给JavaScript脚本使用了。

参考下面的脚本:

[/quote]

自己看看吧。。。

发送ajax请求。javascript跑在客户端的,而Jsp是编译成servlet跑在服务器上的。

在表单中设置hidden域
如:

js: var v =xxx; document.getElementById('hidden_v').value = v;

jsp中的java 脚本没法直接操作js,与js交互的

你只能用ajax发送请求给后台进行交互

楼主的这个问题我刚写jsp的时候也迷惑了很久,最后发现,将jsp的java代码写入到js代码中间,就把jsp的数据传给js了,js通过脚本设置页面中form的元素的值,或者通过get方法提交请求的时候附在url后面也提交给服务器处理了,jsp的动态代码在IE里面是不存在,只会在服务器端执行