前提:句子
无法将Action类返回的数据分配给JSP中的struts变量。
这是错误的,因为在呈现的HTML页面中没有类似“Struts变量”的东西。
也就是说,有几种方法可以实现您的目标(尽管尚不完全清楚):
在呈现页面时加载内容 ,然后通过javascript隐藏/显示它; 这是最快的方法,但是在某些情况下不建议这样做,例如:
- 页面加载后,内容可能已更改,因为其他用户或软件正在对其进行更新;
- 它太大了,无法为所有记录加载它,并且内存占用量和页面加载时间变得无法接受。
- 通过标准POST / GET提交添加/删除内容 ; 这是旧的方式,您需要重新加载所有内容,重新填充所有内容,并且必须手动处理锚点和与页面相关的操作。
通过AJAX调用添加内容 ,并通过javascript(原始javascript,jQuery,struts2-jQuery-plugin或其他库)将其删除;如果解决方案n.1不适合您的情况,则可能正是您所需要的。
为了遵守简化工作的最新标准/最佳做法/工具,您应该使用:
- Struts2-jquery-plugin代替原始jQuery来执行AJAX调用。看看在橱窗上,都
Ajax
和Widgets
零件。您可能正在寻找Ajax
->Div
->Div - Reload
示例。然后 - 在目标div中返回JSP代码段,或者
- 一个JSON对象,您将通过javascript手动解析该JSON对象以构建输出(减少网络流量,但需要更多工作),或提供给struts2-jquery标签。



