我刚开始学习jQuery Mobile,了解到它通过ajax加载所有链接而不实际加载下一页。我的几个页面使用表单和GET方法将数据传递到下一页,那么在使用jQuery Mobile的情况下如何实现这一点呢?
我刚开始学习jQuery Mobile,了解到它通过ajax加载所有链接而不实际加载下一页。我的几个页面使用表单和GET方法将数据传递到下一页,那么在使用jQuery Mobile的情况下如何实现这一点呢?
我认为JQM的一个很酷的特点是,你不需要使用参数在页面之间传递数据。由于你在同一DOM中作为第一个页面,你可以使用普通的变量访问数据,例如:
field1 = $('[name=field1]').val();
field2 = $('[name=field2]').val();
只要您正在使用JQM的ajax功能,您可以在下一页中执行以下操作:
$('.title').text(field1);
我为您做了一个 jsfiddle 的示例。
其他方法可以使用 localStorage 或 sessionStorage API,或者文档中还提到了一些插件。
通常情况下,有两种方法可以在 jQuery Mobile 页面之间传递参数:
以下是使用 Ajax 地址传递参数的方法。 How to pass and get Parameters between two Pages in Jquery Mobile?
使用 sessionStorage/localStorage 传递参数,你可以在第一页添加如下代码:
<a href="#page_Parameter1" onclick="sessionStorage.ParameterID=123">
Before go to next page, parameter id is storaged into sessionStorage.
</a>
在下一页,您可以使用此方法来获取参数内容:
$('#page_Parameter1').live('pageshow', function(event, ui) {
alert('Parameter ID: ' + sessionStorage.ParameterID);
});