Java 使用jquery在jsp页面中接受http会话请求参数
我在使用struts的web应用程序中工作。我在struts操作类中执行一些操作,并使用session.setAttribute设置结果值。我的struts操作类将结果发送到显示结果的jsp页面。我必须在加载jsp页面后显示消息,因此我尝试使用jquery。但我不知道如何在jquery中处理http sesion请求Java 使用jquery在jsp页面中接受http会话请求参数,java,jquery,jsp,Java,Jquery,Jsp,我在使用struts的web应用程序中工作。我在struts操作类中执行一些操作,并使用session.setAttribute设置结果值。我的struts操作类将结果发送到显示结果的jsp页面。我必须在加载jsp页面后显示消息,因此我尝试使用jquery。但我不知道如何在jquery中处理http sesion请求 <script type="text/javascript"> $(document).ready(function()
<script type="text/javascript">
$(document).ready(function()
{
alert("some text");
$("#id_propname").val("");
});
</script>
早些时候,我在sturts-config.xml中获取了一个属性,并设置该值,而不是发送http会话请求参数。但它对我不起作用,因为每次我刷新页面时,它都从struts-config.xml获取初始值。我将struts属性作为jsp页面中的隐藏字段,方法是:
<html:hidden property="propname" styleId="id_propname" name="formname" />
为了设置属性值null,我在jquery中编写了以下代码
<script type="text/javascript">
$(document).ready(function()
{
alert("some text");
$("#id_propname").val("");
});
</script>
$(文档).ready(函数()
{
警报(“某些文本”);
$(“#id_propname”).val(“”);
});
有没有办法直接在jquery中获取http会话请求?如果您能提供一些建议,请回复我。我感谢所有有价值的建议。我知道没有简单的方法可以将您的会话传递给jquery。您可以做的是设置某个隐藏字段的值,并在脚本上声明一个全局变量,访问该值并检查有效条件(如果有) 尽管在jsp中使用scriptlet很难看,而且非常不鼓励,但这可能会奏效:-
<% String sessionVal = session.getAttribute("yourSessionValue").toString() %>
<html type="hidden" id="id_propname" name="propname" value=<%=sessionVal> >
在jquery中:
<script type="text/javascript">
var sessionVal;
$(document).ready(function()
{
sessionVal = $("#id_propname").val();
alert("this is the session value at Script " + sessionVal );
});
</script>
var sessionVal;
$(文档).ready(函数()
{
sessionVal=$(“#id_propname”).val();
警报(“这是脚本“+sessionVal”处的会话值);
});
未完成会话的空检查
或
如果您使用的是标记库,那么可以在表单bean上设置会话值,并在jsp中使用如下内容:-
<logic:equal name="yourFormBean" property="yourProperty" value="someDefinedValue">
Do your action here
</logic:equal> <br />
你在这里做什么
那么,http会话和请求以java对象的形式存在于服务器端,并与servlet相关。另一方面,JQuery将“正常”生活在客户端。。。因此,您的问题描述有点“错误”
您在httpsession或/和httprequest中“发送”的参数是用于jsp生成的,jQuery不起任何作用。然后发送到浏览器的是jsp引擎生成的HTML。jQuery可以使用浏览器中的HTML
顺便说一下,框架名称是Struts而不是Sturts
考虑到这些信息,我真的不明白您实际上想要做什么。jQuery在文档准备就绪后执行,无法访问http头。如果jQuery发出http请求(例如使用$ajax()),它可以访问http头。请参阅,感谢您的宝贵建议。我在将FormBean属性设置为null或其初始值时遇到了另一个问题。是否有任何方法可以重置jquery块中的formbean属性。