这是一个非常简单的场景,但我被卡住了......
我弹出一个 jQuery UI 对话框,用户可以在其中输入一些数据。我正在服务器上处理该数据,用它设置一些会话数据属性,然后返回一个与我的一个 JSP 文件的名称匹配的字符串值。
Spring 正在检测字符串,通过 viewresolver 找到 JSP,并传回 JSP 的内容......但它没有加载。
这是视图解析器,但我不认为这是问题所在......
<bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".jsp" />
</bean>
...这是控制器重定向:
@RequestMapping(value = "/selectSystem", method = RequestMethod.GET)
public String selectSystem(
@RequestParam("systemid") Integer systemid,
HttpSession session) {
session.setAttribute("currentSystem", systemid);
return "system_main";
}
我一直在 Chrome 的调试工具中看到这个。该对话框发送正确的参数,在 $.post 完成后关闭,服务器返回我期望的带有 jqGrid 的 JSP。但是,该页面仍然位于我开始的位置。
这是对话框的 AJAX 将参数发布到服务器并关闭:
buttons: {
Select: function () {
$.post('selectSystem.html',"systemid="+jQuery('#systemsReviewGrid').jqGrid('getGridParam', 'selrow'));
dialog.remove();
}
},
我测试了不关闭我的对话框,以防在我关闭它之前内容已经到那里,但那里没有变化。
浏览器正在显示响应数据中的内容....那么为什么不呈现呢?为了让事情更令人抓狂,我在同一个控制器的另一个区域重定向到这个完全相同的 JSP,它工作正常。我能发现的唯一区别是,在这种情况下,客户端不是来自对话......
对其他领域有什么想法吗?关于其他片段的建议要在此处添加?
[编辑:添加了一些代码描述以帮助提供上下文]