我正在使用BBQ jquery插件进行AJAX历史记录管理,但是我遇到了“漂亮网址”的问题。我已经尝试了所有我能想到的东西,但希望我错过了一些愚蠢的东西,有人可以指出我正确的方向。
我正在为仅填充的输入序列化表单,以避免散列片段中出现空查询。警告decodeURIComponent正在显示我想要的字符串,但我仍然以#hashfragment=key%26value%3Dkey%26value
有人可以帮忙吗?相关代码如下。
stateQuery = $('#searchUsers :input[value]').serialize();
stateQuery = decodeURIComponent(stateQuery);
// Push the state into history and replace any other keys
$.bbq.pushState({ search: stateQuery }, 2);
感谢。
答案 0 :(得分:1)
好吧,我找到了一个解决我问题的方法,不像一个干净的参数字符串那么优雅,但是直到我想出其他的东西,它才能做到。
在推送状态之前,使用jQuery bbqs param.fragment.noEscape函数来解决一些无知的角色(遗憾地试图逃避&和=停止工作中的状态功能),然后替换'='和'&'字符串中的字符被推入状态。
然后在获取状态时,在将其推送到更新页面的函数之前,请使用“=”和“&”重新替换分隔符一切都很顺利。