如果我希望浏览器“记住”使用ajax请求的搜索结果,该怎么办? 我正在使用jquery插件Jquery地址,但我不能拼凑如何做到这一点
这是我提交表单的代码片段:
var ajaxforms = {
searchoptions : function(){
$('form#searchoptions').ajaxForm({
url : base_url + 'search/categorysearch',
target : '#search_result',
beforeSubmit : blocksearchdiv,
success : revise_searchtable_onsuccess
});
},
searchfilters : function(){
$('form#searchfilters').ajaxForm({
url : base_url + 'search/filter',
target : '#search_result',
beforeSubmit : blocksearchdiv,
success : revise_searchtable_onsuccess
});
},
searchterm : function(){
$('form#termsearch').ajaxForm({
url: base_url + 'search/termsearch',
target : '#search_result',
beforeSubmit : blocksearchdiv,
success : revise_searchtable_onsuccess
});
}
这里是回调函数revise_searchtable_onsuccess:
function revise_searchtable_onsuccess()
{
$(function(){
$.tablesorter.defaults.sortList = [[0,1]];
$('#tableresults').tablesorter();
});
$.address // don't know what comes next
unblocksearchdiv();
}
请帮我实现jquery地址;或者你可能已经用其他插件实现了这个?
答案 0 :(得分:1)
jQuery地址的文档可在jQuery Address - Docs获得。您可能对使用$('a').address()
感兴趣,<a>
用于更改{{1}}中使用的网址。
答案 1 :(得分:1)
我不是肯定这是你想要的,但是当页面(url)加载了哈希时,我是如何从哈希得到结果的。
注意,这是JS而不是JQ,但是从这里JQ起来都是你想要的。
您将不得不重新考虑您的哈希结构。使用.split()可以轻松解析多个值。
检查哈希
if(window.location.hash) {
var hash =window.location.hash.substring(1);// ignores #
}
从那里,解析哈希变量以获取信息,然后查询数据库以获得与以前相同的结果。
所以somepage.php #search = string_term = blah可以在加载时分解为变量,然后变成查询