【问题标题】:is there any way to refresh url with out refreshing whole page有什么方法可以在不刷新整个页面的情况下刷新 url
【发布时间】:2013-10-30 16:58:16
【问题描述】:

我正在使用 prettyfaces 3.3.3、jsf 2.1、primefaces 3.5 我的问题是,有没有什么方法可以刷新 url 而无需像 ajax 调用那样刷新整个页面

当我点击h:link 时,请查看以下代码:

<!-- do not disturb with this #{subMenuBeanList.subMenuLinkBean}, this gives me pretty:anyMappingId-->
<h:link outcome="#{subMenuBeanList.subMenuLinkBean}" value="#{subMenuBeanList.subMenuNameBean}">
<f:param name="section" value="#{sectionBeanList.sectionNameBean}"/>
</h:link>

当我点击h:link 时,它给了我一个页面(带有此网址localhost:8080/myApp/sectionname/anypattern),我有一个带有两个输入字段和一个p:commandbutton 的表单在这里我使用ajax 调用提交表单 成功提交后,我想要这样的网址localhost:8080/myApp/sectionname/anypattern?f=2014-15 这在漂亮的面孔中可能吗?

【问题讨论】:

  • 不知道是否可行,但您想实现什么?不同的 url 应该指向应用程序的不同视图。此外,为 POST 请求考虑不同的 url 也不是最佳做法。
  • 这里我有两个输入字段,一个用于2014,另一个用于15 2014-15(如上所述)是我申请的开放财政年度基本上我正在开发一个帐户应用程序,当我之后使用 ajax 提交表单我想在 url 中显示打开的财政年度(2014-15
  • 所以它基本上是一个url参数?然后你应该使用重定向
  • 是的,你是对的,但我想在没有重定向的情况下实现这一点。

标签: ajax jsf jsf-2 primefaces prettyfaces


【解决方案1】:

要在不刷新浏览器的情况下刷新 URL,您需要使用 HTML5 pushstate 之类的东西。您可以为此使用 History.js:https://github.com/browserstate/history.js/#welcome-to-historyjs--v18b2-june-22-2013

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-24
    • 2017-05-11
    • 2021-12-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多