我有两个页面: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 是未定义的。我究竟做错了什么?