我的问题是,我有一个包含字段(例如:名称,城市等)的jsp页面(比如说one.jsp),并且在我点击提交按钮后,一个新的jsp (two.jsp)在新选项卡中打开,它包含一个单选按钮“我接受”。当用户现在点击这个单选按钮时,业务逻辑应该被执行。但问题是one.jsp的形式值(名称,城市等)的值将丢失。Struts 1.x Java表单数据丢失
使用window.open打开新的jsp页面不是对服务器的新请求。我想知道为什么表单值会丢失。
我的问题是,我有一个包含字段(例如:名称,城市等)的jsp页面(比如说one.jsp),并且在我点击提交按钮后,一个新的jsp (two.jsp)在新选项卡中打开,它包含一个单选按钮“我接受”。当用户现在点击这个单选按钮时,业务逻辑应该被执行。但问题是one.jsp的形式值(名称,城市等)的值将丢失。Struts 1.x Java表单数据丢失
使用window.open打开新的jsp页面不是对服务器的新请求。我想知道为什么表单值会丢失。
由于您使用的是Struts 1,请确保您声明的值将保留在“我接受”操作的ActionForm中,并将值设置为Form2.setName(Form1.getName()) ;
或者您必须在two.jsp中将这些值保留为隐藏字段。
我想以上两点将帮助你!
嗨阿什温,你能提供一个示例服用one.jsp – user1878804
单场详细解释,也可以解释你如何保持这些值作为隐藏字段用一个例子two.jsp。PS THX为响应 – user1878804
您将在FormBean1.Create有一个字段“名”同场的Formbean2.In你的“我接受”动做设定值Form2.setName(Form1.getName ());. – ashwinsakthi
您将从一个jsp到另一个jsp.But表单值仅从一个jsp处理到另一个jsp>但您期望该值提交表单。所以你可以使用request.getParameter()来做一件事,你已经得到了这个值。
,然后你必须设置值,你需要的。
发布one.jsp和two.jsp的源代码 – anshulkatta
是什么让您认为在新选项卡中打开新的JSP不是一个新请求? –
喜戴夫,我打开属于同一项目(window.open(“JSP路径”一个新的JSP文件)。我认为浏览器将不会再次发送一个HTTP请求到服务器,请纠正我,如果我错了。此外,提供了一个解决方案,而无需使用会话。谢谢! – user1878804