我将 Pjax 与http://railscasts.com/episodes/294-playing-with-pjax?view=comments中的教程一起使用 我不需要更改 url,而且这个咖啡脚本代码不起作用:
......
$("a#flag-comments").click ->
……
$.pjax
容器:'[data-pjax-container-flag]',
替换:假,
网址:'/flag_comments'
……
任何想法?
我将 Pjax 与http://railscasts.com/episodes/294-playing-with-pjax?view=comments中的教程一起使用 我不需要更改 url,而且这个咖啡脚本代码不起作用:
......
$("a#flag-comments").click ->
……
$.pjax
容器:'[data-pjax-container-flag]',
替换:假,
网址:'/flag_comments'
……
任何想法?
在选项中设置push: false 。在 js 中,它将是:
$(document).pjax('a', '#pjax-container', {push: false})
这不是很好,但它的工作......
> $(document)
>> .on 'pjax:beforeSend', ->
>> $.url_old = window.location.pathname
>> .on 'pjax:success', ->
>> history.pushState(null, "", $.url_old)
编辑:请参阅下面的 clime 答案-看来我的答案不再正确。
由于 PJAX (pushState AJAX) 的目的是更新 url,我认为没有办法禁用它。如果在您只想使用标准 AJAX 之后更新 url 不是您想要的?(基本上使用 JQuery 执行给定路径的 ajax 获取,然后将内容推入您选择的容器中)
JQuery PJAX 脚本中的“replace”选项只是在使用“replaceState”和“pushState”之间切换来更新页面 url。
抱歉,我无法提供更多帮助。