基本上我想在流程执行密钥
的末尾添加一个# e.g。 _flowExecutionKey=_c8CEAE6.....E1095#
这样当页面显示时,它将显示在锚标记
我有一个由用户动态构建的页面。
用户可以选择向页面添加其他字段以输入更多数据。
字段是存储在列表中的对象。
页面循环遍历列表中的所有对象并显示它们。
我已经配置了一个操作流程,它将另一个对象添加到列表中,然后再次显示该页面,这会导致出现新字段。
问题在于,当页面再次加载时,它始终位于顶部,而不是添加新字段的位置。我可以在生成新字段的位置添加锚点,但我不知道是否可以在流程执行键的末尾添加#
答案 0 :(得分:3)
有点远景,但我认为解决方案可能是通过一系列步骤,而不是通过弹簧网络流程机制
有一些javascript,'onload'将位置更改为右锚:
body onload =“location.href = location.href +'#object8'”
这会将你带到第8个元素,而不会再次访问服务器。
答案 1 :(得分:0)
如果你使用表单,有一个比使用javascript更好的解决方案。
你可以使用这样的锚:
<form action="${flowExecutionUrl}#position" method="POST" commandName="yourForm">
结合在工作流程中设置属性:
<transition on="save" to="yourViewState" >
<set name="flowScope.isSaved" value="true" />
</transition>
在你的jsp上面:
<c:if test="${isSaved}">
<a id="position"></a>
Your thingy is saved.
</c:if>
因此,如果您提交保存操作,屏幕将自动跳转到“您的东西已保存”消息。