JQTouch:在'views'之间传递数据

时间:2011-05-17 16:44:29

标签: javascript jquery jqtouch

您好我今天一直在玩jqtouch,我只是想知道如何管理数据。

我试着环顾四周但看不到太多文档。

如果我有一个产品链接列表?然后我点击一个我可以导航到产品'视图'。如何传递变量,就像$_GET变量一样,选择那个产品?

或者即使我将链接的id设置为记录的id并使用JS来获取ID并以某种方式将其传递给下一个视图?

对此有任何帮助将非常感激!

注意:我也想将它与离线扩展一起使用,所以我不确定ajax是否可行

此致

比利

2 个答案:

答案 0 :(得分:4)

您可以将referrer属性用于数据对象。链接看起来像:

<a href="#view" id="1">Product #1</a>

其中HTML ID对应于产品ID。然后在“pageAnimationEnd”事件中,您可以检索产品详细信息,如下所示:

$('#view').bind('pageAnimationEnd', function (e, info) {
  // get the id of the calling href
  var id = $(this).data('referrer')[0].id;

  $.getJSON('/products/' + id, function (data) {
    // do something with the data
  });
});

答案 1 :(得分:0)

您可以查看the demo,看看它是如何形成提交的,即AJAX&gt; POST表单示例。基本上,您创建一个表单和一个jQT样式的提交按钮:

<form id="ajax_demo" action="ajax_demo.php" method="POST" class="form">
  ...
  <a class="submit whiteButton" href="#">Submit</a>
</form>

然后在您的接收页面(即ajax_demo.php)中,您可以访问表单字段,例如PHP的$_GET或JavaScript的location.search

另一种方法是使用jQuery将数据存储在DOM中:

// in global level
$('body').data('ajax_demo', "some data for the page");

// in page/view level
$('#ajax_demo').data('key', 'value');