带有/ Parameters的Jquery Mobile更改页面

时间:2012-12-09 06:23:07

标签: jquery jquery-mobile mobile

我有两页: SRDashboard.html和SREventInfo.html

仪表板包含事件列表,另一页面用于查看其中一个事件。我进行了设置,以便在单击列表中的某个事件后,调用loadEvent方法,并执行以下代码:

$.mobile.changePage(Config.PageNames.EventInfo, { dataUrl : Config.PageNames.EventInfo + "?eventId=" + eventId, data : { eventId: eventId }, reloadPage : true, changeHash : true });

正如您所看到的,它正在传递eventId。我可以看到它是通过firebug实现的,并且参数就像我需要它一样。

在SREventInfo.html中,我有以下块:

<div data-role="page" id="EventInfoPage">
            <script type="text/javascript">
                $("#EventInfoPage").live('pageinit', function () {
                        var url = $.url(document.location);
                        alert(document.location);
                        var eventId = url.param("eventId");
                        alert(eventId);
                });
    </script>
</div>

这里发生的是我的第一个提醒是URL为SRDashboard.html,而eventId未定义。我做错了什么?

1 个答案:

答案 0 :(得分:2)

我正在使用这种方法,这是一种jQM方式,至少适用于版本1.0和1.1:

$("#EventInfoPage").live('pagebeforeshow', function () {
    var eventId = $(this).data("url").split("?")[1];;
    eventId = eventId.replace("eventId=","");   
    alert(eventId);
});