2012-06-07 80 views
0

我正在使用Jquery Mobile创建一个HTML5 Mobile应用程序,该应用程序能够显示使用d3js创建的图表。这些图表将在客户端创建,但数据将通过服务器检索。 JQM页面是静态HTML页面,可从服务器请求数据并创建即兴图表。但是,我很难理解JQM ajax /哈希映射。当我将请求重定向到另一个页面时,它无法在该页面上运行JavaScript。因此,我使用window.location.href = a.html来改变页面而不是$ .mobile.changePage(a.html)。使用Jquery Mobile在手机上显示图表(d3js)

每个数据页都有一个id,这样它就可以被缓存,那么我该如何创建一个新的页面链接并为其提供数据。

我有2个文件:index.html其中包含用户可以选择查看的数据列表,然后另一个文件是chart.html其中包含有关如何使用JavaScript Ajax从服务器获取数据创建图表的信息。这是如何使用JQM的。

回答

1

我希望你已经通过JQM Page LinksJQM Page Scripting

由于JQM通过(高速)阿贾克斯获取所有后续页面并插入其<body>标签到当前的DOM运行;您的后续页面上定义的<script>不会被执行。

您需要在您的第一页的<head>所有的脚本 - index.html的

在页面之间传递参数;你可以简单地使用在JQM Page Scripting页面

的底部所提及的插件。虽然我个人只使用$。数据()函数:d

+0

我不知道如何给每个排行榜中的模块(每个数据角色= “page”)一个唯一的ID,因为我只知道运行时的charttype和chartpage。如果我不给一个唯一的ID,那么它只会呈现相同的页面。不是吗? – Abhishek

+0

您并不需要为每种图表类型构建单独的页面。而只是根据“inputPage”上的用户选择的类型在单个“chartPage”的内容中呈现正确的图表类型 –

+0

非常感谢。这会做到这一点。 – Abhishek

相关问题