2013-04-05 35 views
0

我正在开发一个客户端应用程序,它将通过ajax加载相当多的数据并将其存储在JavaScript模型中的某个地方。总之,我的应用程序有以下要素:jquery ajax数据容器

  • AJAX调用:加载用户列表,加载财务数据(用户收入和结果,加载基于收入/成果图表数据)
  • 在用户列表加载初始页面加载(并且不会更改)
  • 可以为给定时间段内的选定用户检索财务数据
  • 存在与用户复选框列表的对话框 - 提交对话框后,将检索财务数据(通过ajax)

因此,每个整页加载都会有一次ajax调用,并且每次更改任何过滤器时都会调用一些ajax调用。

我发现jquery提供了一个将数据绑定到特定DOM对象的.data()函数。但是,正如您所看到的,我不需要将数据绑定到特定的DOM对象,而只是为了全局管理它。有没有推荐的方法,你会建议什么?

+0

全局变量对象有什么问题? – 2013-04-05 18:54:15

+0

@RezaOwliaei没有错。我只是不想重新发明轮子 - 这就是为什么我要求提示,好的方法等。 – ducin 2013-04-05 19:04:27

回答

2

对于全局数据,您可以考虑包含这些值的全局JavaScript对象。例如,声明globalData:

var globalData = {users : /*Put User List Here*/ }; 

然后,只要将值分配给检索到的全局数据对象。

$.ajax(success:function(data){ 
    globalData.transactions = data; 
}); 

您可以使用.data()函数将数据限制到特定的UI元素。例如,如果您有一段显示帐户列表的页面,则可以使用.data()函数,例如此帐户列表的ajax请求。

$.ajax(success:function(data){ 
    $("#accountList").data(data); 
}); 
+0

$('body')。data()也相当可观吗? – 2013-04-05 19:08:04