首页 文章

在javascript中保存数据的页面导航

提问于
浏览
-1

我们正在制作一个带有近15个模块并使用jQuery mobile的phonegap移动企业应用程序(大量信息捕获和显示) . 我们基本上希望从具有后退和下一个功能的说明Page1到page2导航到page3,然后在第3页提交 . 现在,当我从page1导航到page2再到page3然后返回时,我希望我的所有数据都在控件中维护,如何实现这一目标?我并不期待将所有div(页面)放在一个页面中,因为它变得非常拥挤,尽管我们正在使用单页面实现技术 .

当我说要维护的数据时,我的意思是,无论在第1页中填写的数据是什么,一旦我回到页面后再说导航page2和page3,即填写Page1 next - > fill page2 next-> fill page3 back - >第2页(保留数据)返回 - >第1页(保留数据)

1 回答

  • 0

    如果您的意思是保留页面的状态,并且不希望将其保留在DOM中 . 我建议你Backbone . 该框架允许您将元素存储在单独的View对象中 . 您可以从DOM中自由地将其销毁并在以后将其丢弃 - 所有这些都是"data" :) - 随时随地 .

    jQuery Mobile和Backbone确实发生了冲突 . 它们在导航机制上重叠,JQM是基于标记的,Backbone是以编程方式 . 但你可以轻松解决这个问题 . 我更喜欢使用Backbone来完成这种工作 . 以下是禁用JQM导航的方法:

    $(document).bind("mobileinit", function() {
      $.mobile.ajaxEnabled = false;
      $.mobile.linkBindingEnabled = false;
      $.mobile.hashListeningEnabled = false;
      $.mobile.pushStateEnabled = false;
    });
    
    $('div[data-role="page"]').live('pagehide', function(event, ui) {
      return $(event.currentTarget).remove();
    });
    

    我从Christophe Coenraets偷走了这个:P

    其余的,如何使用Backbone进行页面导航......,你应该阅读Backbone Documents

    您可以将JQM用作UI框架 . Backbone作为MV *框架 . 如果你还不知道如何使用Backbone,你应该学习它 . 值得你的时间:)

相关问题