2013-04-30 102 views
0

我们有一个搜索表单,允许用户搜索页面上的项目。如何让我的页面记住用户的上次操作?

另外还有一种带复选框的形式,允许用户优化他们的搜索,希望减少搜索结果的数量。例如,如果我在搜索框中输入McCland并返回前进McCland的13个结果,则可以单击Advanced search并呈现一堆复选框。

我可以再检查,"Road","LandMarks"等。然后,我可以再次点击麦克兰搜索。

这次只有街道或道路或LandMarks的地址会显示,如果有的话。

This works great。

然后有一个Remember This Action图标。

到目前为止,我的最大挑战是让用户点击这个Remember This Action图标并保存其当前结果。

这样,下次他们访问该页面时,他们先前搜索到的结果会呈现给他们,除非他们选择使用其他选项进行搜索。

如果他们点击这个Remember This Action图标,系统会提示他们一条消息,说明他们将要保存当前的结果。

他们可以点击是保存或取消不保存。

我怀疑这将用cookies(jquery或Javascriot)完成,但我不知道如何做到这一点。

任何帮助,非常感谢。

+1

查找到'localStorage' /'的sessionStorage ':https://developer.mozilla.org/en-US/docs/DOM/Storage – Ian 2013-04-30 17:40:26

回答

0

如果你正在寻找您可以使用JQuery的Cookie的插件jQuery的解决方案:https://github.com/carhartl/jquery-cookie

你的代码可能是这个样子:

//Set the action 
$.cookie('last_action', 'the_action'); 

//Get the action 
var last_action = $.cookie('last_action'); 
if (typeof last_action != 'undefined') { 
    // show last action 
} else { 
    //show default 
} 
+0

谢谢@Ryan。 让我们假设从上面的例子中,我只是通过街道,道路和LandMarks的麦克兰地址,我希望记住我搜索的内容以及下次访问该页面时的结果,我将如何修改您的代码? 伊恩,我仍然在阅读你提供的链接。谢谢。 – Kenny 2013-04-30 18:05:26

+0

将搜索字段文本保存在一个cookie中,然后将选中复选框的json数组保存到另一个cookie中。 (或者,您可以为每个复选框的值创建一个新的Cookie。)当页面加载时,检查是否设置了cookie并填写搜索字段并根据保存的值检查框。 – 2013-04-30 18:13:18

+0

对不起,我没有明白你的意思。 @Ryan,那个链接上的例子非常复杂。 – Kenny 2013-05-01 13:04:38

相关问题