日期:2014-05-16  浏览次数:20911 次

jQuery.post( url,data,success()] 为什么用这个提交表单请求时候表单的值不会存入session里?
jQuery.post( url,data,success()]我用这种方法提交表单,将表单的所有控件值放到了data里,然后提交到后台,在后台的execute函数里打印出了表单里的控件值,可是我在前台用var s ="<s:property value="valueId"/>"这个获取不到valueId里面的值。
也获取不到session里面的值,用这个 var d =<%=session.getAttribute("valueId")%>;alert(d);结果显示是空的。这个是什么原因了,希望有知道的能教下我,不甚感激啊,在此谢过了
------解决方案--------------------
可是我在前台用var s ="<s:property value="valueId"/>"这个获取不到valueId里面的值。
---
你那时获取的,提供的数据仅对那个url地址有用,其他页面要用需要保存起来

也获取不到session里面的值,用这个 var d =<%=session.getAttribute("valueId")%>;alert(d);结果显示是空的。这个是什么原因了,希望有知道的能教下我,不甚感激啊,在此谢过了
---
同上,提交后你用session爆粗了valueId没有。。没有怎么获取,而且获取这个值之前一定要执行过ajax了
------解决方案--------------------
你在页面上这么写var s ="<s:property value="valueId"/>" ,其实在页面加载时,s变量就已经被赋值了。如果那时候的valueId为空,那这个s就是空。不会因为你提交了一个ajax请求而改变,除非你手动再次赋值。
你需要在ajax请求中返回该valueId,并赋值给s。