2011-02-23 68 views
2

我使用真棒jQuery autocomplete plugin。不过,在了解浏览器行为和Ajax方面,我有点新手,所以我有一个问题。jQuery自动完成和后退按钮的行为?

这是事件发生的顺序:

  1. 用户类型“鱼”到文本框中
  2. 用户从自动完成选项列表中选择书的标题 - 养鱼,鱼油炸等
  3. HTML负荷(单击此处进行鱼类养殖)
  4. 用户单击链接并加载养鱼页面
  5. 用户决定养鱼不适合他们,单击“返回”按钮并返回到空p年龄!

我该如何改变这一点,以便当用户返回到主页时,他们会看到Fish Farming html--他们正在查看的页面?

这是我的自动完成代码:

// Autocomplete listener. 
    $("#q").catcomplete({ 
      source: "/book_results", 
      select: function(event,ui) { 
       $('#book_results').html(load_img); 
       if (ui.item.category=="Books") { 
        $.bbq.removeState(); 
        var paramsObj = { 'b' : ui.item.id }; 
        $.bbq.pushState(paramsObj); 
        get_books(null, null, null, ui.item.id); 
       } else { 
        $.bbq.removeState(); 
        var paramsObj = { 's' : ui.item.id }; 
        $.bbq.pushState(paramsObj); 
        get_books(null, ui.item.id, null); 
       } 
      } 
    }); 

正如你所看到的,我已经在使用BBQ plugin当用户选择从自动完成一些更新网址片段,只是因为它似乎是个好主意。

所以,我有我的哈希book_id集 - 但我怎么能保证当用户点击相关的HTML载荷返回?

谢谢!

回答

0

当用户使得选项附加锚URI或会话状态。

作出的前进和后退按钮新的事件,并相应地遍历列表。

+0

“当用户选择......” - 我与烧烤插件已经在做,按照问题。 “举办新的活动......” - 请你详细说明你的意思吗? – AP257 2011-02-25 09:02:39

+0

我解释了如何实现烧烤插件。您可能要检查在[BBQ例如文档(http://benalman.com/code/projects/jquery-bbq/examples/fragment-jquery-ui-tabs/)更彻底,我不熟悉,但它看起来活着,你保存的状态不检索它们。 – 2011-02-27 20:56:17