链接中的 URL 片段和 JSF 中的 ajax 重定向

Posted

技术标签:

【中文标题】链接中的 URL 片段和 JSF 中的 ajax 重定向【英文标题】:URL fragment in links and ajax redirects in JSF 【发布时间】:2011-06-09 14:42:53 【问题描述】:

我发现JSF 2.0中ajax动作调用的方法可以返回导航大小写,然后页面可以被重定向。

例如。当我在页面index.xhtml 并且我的ajax 调用返回导航案例detail 时,页面被重定向。太好了。

 <h:commandLink value="The link" action="#bean.someAction" >
            <f:ajax />
 </h:commandLink>

但现在我只想在当前页面中进行部分重定向,所以我想使用 URL 片段。所需的最终 URL 类似于 index.xhtml#someComponentId。我试图通过在导航箱后面附加#fragment 部分来做到这一点,但它不起作用。

请问有什么方法可以使 ajax 和普通重定向能够使用 URL 片段吗?感谢您的回复。

【问题讨论】:

【参考方案1】:

您可以整天在代码中指定片段,但您无法解析这些片段。您将需要对页面进行更多控制。我已经简要地使用了 jQuery hashchange 插件。 http://benalman.com/projects/jquery-hashchange-plugin/。还有一个叫BBQ的插件,在同一个页面上做的更多。

然后你需要指定一个回调(我给你的那个网站上有教程)来指导页面在那个特定的哈希上做什么。

查看示例。

http://benalman.com/code/projects/jquery-bbq/examples/fragment-basic/

我知道这个答案有点含糊,但我相信它会为您指明如何解决这个问题的正确方向。

【讨论】:

以上是关于链接中的 URL 片段和 JSF 中的 ajax 重定向的主要内容,如果未能解决你的问题,请参考以下文章

用于链接/导航到其他 JSF 页面的 URL

嵌套 JSF 复合组件中的 AJAX

JSF ajax 请求中的异常处理

JSF ajax 请求中的异常处理

JSF 2.0中的AJAX onSubmit验证

JSF ViewScoped bean 在所有 ajax 请求中的唯一 ID?