Javascript 如何让我的页面记住用户';最后的行动是什么?
我们有一个搜索表单,允许用户在页面上搜索项目 还有另一种带有复选框的表单,允许用户优化搜索,希望减少搜索结果的数量 例如,如果我在搜索框中输入McCland并返回13个结果,我可以单击Javascript 如何让我的页面记住用户';最后的行动是什么?,javascript,jquery,Javascript,Jquery,我们有一个搜索表单,允许用户在页面上搜索项目 还有另一种带有复选框的表单,允许用户优化搜索,希望减少搜索结果的数量 例如,如果我在搜索框中输入McCland并返回13个结果,我可以单击Advanced search,并呈现一组复选框 然后,我可以查看“街道”,“道路”,“地标”,等等。然后,我可以再次单击McCland上的搜索 这一次,只有带有街道或道路或地标的地址才会显示(如果可用) 这很有效 然后有一个记住此操作图标 到目前为止,我最大的挑战是允许用户单击此记住此操作图标并保存当前结果 这样
Advanced search
,并呈现一组复选框
然后,我可以查看“街道”
,“道路”
,“地标”
,等等。然后,我可以再次单击McCland上的搜索
这一次,只有带有街道或道路或地标的地址才会显示(如果可用)
这很有效
然后有一个记住此操作
图标
到目前为止,我最大的挑战是允许用户单击此记住此操作
图标并保存当前结果
这样,下次他们访问页面时,除非他们选择使用其他选项进行搜索,否则会向他们显示以前搜索的结果
如果他们单击此记住此操作
图标,他们将收到一条消息,说明他们将要保存当前结果
他们可以单击“是”保存,或单击“取消”不保存
我怀疑这将通过cookies(jquery或Javascriot)实现,但我不确定如何实现
非常感谢您的帮助。如果您正在寻找jQuery解决方案,您可以使用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
}
查看
本地存储
/会话存储
:谢谢@Ryan。让我们从我上面的例子中假设,我只是通过McCland的地址,以及街道、道路和地标,我希望记住我搜索的内容以及下次访问页面时的结果,我将如何修改您的代码?伊恩,我还在读你提供的链接。谢谢。在一个cookie中保存搜索字段文本,然后在另一个cookie中保存选中复选框的json数组。(或者,您可以为每个复选框的值创建一个新的cookie。)加载页面时,检查cookie是否已设置,并填写搜索字段,然后根据保存的值选中框。对不起,我不明白您的意思@Ryan,这个链接的例子非常复杂。