2011-05-17 110 views
3

嗨我一直在玩jqtouch今天,我只是想知道如何管理数据。JQTouch:在'views'之间传递数据

我试过环顾四周,但看不到太多的文档。

如果我有一个说产品的链接列表?我点击一个我可以导航到产品'视图'。如何通过变量像$_GET变量来选择该产品?

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

任何与此有关的帮助将不胜感激!

注:我也想与离线扩展来使用它,所以我不知道GET AJAX会工作

问候,

比利

回答

0

你可以看看the demo怎么看呢表单提交,即AJAX> 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

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

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

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

感谢您的回复,您知道发布ajax是否可以在离线模式下工作吗?我正在使用jqtouch的离线扩展 – iamjonesy 2011-05-19 08:53:25

+0

我以前没有使用该扩展名。看起来它使用的是HTML5的Web存储API(http://www.w3.org/TR/webstorage/)。我认为它应该可以正常工作。 – 2011-05-19 09:38:32

4

您可以使用引用属性的数据对象。该链接看起来像:

<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 
    }); 
});