JSP页面隐藏字段值未在同一浏览器不同选项卡中更新
我使用的是SpringMVC应用程序。在JSP页面中,我使用一个隐藏字段将数据持久化到客户端。它是一个显示员工详细信息的应用程序。根据员工状态,我需要禁用或启用JSP页面中的字段。如果我在同一浏览器(FF)的两个选项卡中打开不同状态的员工,则隐藏的字段值不会更新 在JSP页面中JSP页面隐藏字段值未在同一浏览器不同选项卡中更新,jsp,spring-mvc,hidden-field,Jsp,Spring Mvc,Hidden Field,我使用的是SpringMVC应用程序。在JSP页面中,我使用一个隐藏字段将数据持久化到客户端。它是一个显示员工详细信息的应用程序。根据员工状态,我需要禁用或启用JSP页面中的字段。如果我在同一浏览器(FF)的两个选项卡中打开不同状态的员工,则隐藏的字段值不会更新 在JSP页面中 <div id="main"> <form:form modelAttribute="employeeModel" id="employeeModelform"> <form
<div id="main">
<form:form modelAttribute="employeeModel" id="employeeModelform">
<form:hidden path="employeerStatus" id="employeeStatusId" />
------
</form:form>
</div>
为同一浏览器的不同选项卡保留不同隐藏字段值的可能方法有哪些。
提前感谢。页面加载时会打印隐藏字段值。您只能通过重新加载页面来更新它们(除了在客户端用Javascript做一些事情,可能是Ajax)。您可能应该认真思考为什么需要这样做,因为毫无疑问,有一种比使用隐藏字段更好(甚至更正确)的方法。例如,只需将会话中的值保留在服务器端,而不是将其放在隐藏字段中。如果该内容是会话范围的一部分,则可能根本不需要将其打印到表单中。谢谢您的回答。这里我的实际问题是,如果我在同一浏览器的不同选项卡中打开不同的员工详细信息,特定浏览器选项卡实例的隐藏值没有更改。例如,预期结果:对于employee1-页面中的所有字段都是可编辑的。对于employee2-所有字段都是不可编辑的。但实际结果是我无法编辑两个员工详细信息。“employeeStatusId”隐藏字段在所有选项卡实例中保持不变。
@RequestMapping(value = "/{screen}/{employeeid}", method = RequestMethod.GET)
public String getEmployeeBasicPage(
@PathVariable(value = "employeeid") String employeeid,
@PathVariable(value = "screen") String screen, Model model,
HttpSession session, HttpServletRequest httpServletRequest) {
return employeeBasicPage(employeeid, screen, null, model, session);
}