我正在为现有的php后端创建移动扩展。因此我一直在试用Jquery Mobile。
我正在尝试从php后端生成动态内容,发送存储的本地数据以根据用户ID等生成所需的结果。这让我有点担心jqm不是“更多”为这些类型开箱即用的使用
无论如何,我一直在使用以下示例在div区域中插入动态内容:
$(document).on('pageinit', "#orders",function () {
var uid = localStorage.getItem('uid');
var mobilecode = localStorage.getItem('mobilecode');
var company = localStorage.getItem('company');
$("#orders_data").load("orders_data.php", {uid: uid, mobilecode: mobilecode, company:company}, function(){
$('#orders_data').trigger('create');
});
});
这是php后端的一个例子。热门php文件是数据库和站点设置,以及来自帖子数据的用户验证/详细信息。
<?php
define("AJAX_HTML", true);
require($_SERVER[ 'DOCUMENT_ROOT']. "/config/init.php");
require("init_ajax_handler.php");
?>
<div id="accordion-orders" data-role="collapsible-set" data-inset="false" data-filter="true" data-theme="c" data-content-theme="d" data-collapsed-icon="bars" data-expanded-icon="info">
<div data-role="collapsible">
<h3>Order ID</h3>
<p>Notes</p>
</div>
<div data-role="collapsible">
<h3>Order ID</h3>
<p>Notes</p>
</div>
</div>
<?php echo "<pre>"; print_r($_POST); echo "</pre>"; ?>
此方法有效并将动态内容放入#orders_data,但每3或4次失败,导致白屏应该是内容。 div实际上是空的!如果我再次刷新它的好。移动测试和桌面测试都是如此。 php后端是硬编码用于测试目的,所以我知道它每次都发送jqm格式的数据,所有必需的后期数据都由后端接收。
任何人都知道为什么有时会失败?或者有更好的方法将php数据提取到jqm?
最重要的是,我想通过菜单触发以及get或postdata直接调用完整页面'orders.php',而不是更新div。