さまざまなファイルで配布されているjQueryMobileプロジェクトがあります。
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" charset="utf-8" src="cordova-2.3.0.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
<link rel="stylesheet" href="css/custom.css" />
<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
<script src="js/methods.js"></script>
</head>
<body>
<!-- Termine Page -->
<div data-role="page" id="firstPage">
<div data-role="header" data-position="fixed">
<h1>Header 1</h1>
...
</div><!-- /navbar -->
<div data-role="content">
...
</div>
</div>
</body>
</html>
secondPage.html
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" charset="utf-8" src="cordova-2.3.0.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
<link rel="stylesheet" href="css/custom.css" />
<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
<script src="js/methods.js"></script>
</head>
<body>
<div data-role="page" id="pageTwo" class="ui-page">
<div data-role="header" data-position="fixed" id="terminDetailSeiteHeader">
<h1>Header 2</h1>
</div>
<div data-role="content">
<div id="contentToFillWithDynamicListView"></div>
</div>
</div>
</body>
</html>
次に、php-Scriptを呼び出してリストビューを生成するスクリプトを取得しました。
function listViewCreation() {
var url = 'http://www.myServer.com/myPhp.php?someParameters=1&callback=?';
$.getJSON(url, function(data) {
$('#contentToFillWithDynamicListView').empty();
var collapsibleList = '<ul data-role="listview">';
var myselfIsIncluded = 0;
$.each(data, function(key, value) {
collapsibleList += '<li>' + value['displayName'] + '</li>';
});
collapsibleList += '</ul>';
$('#contentToFillWithDynamicListView').html(collapsibleList).trigger('create');
});
}
.trigger('create')はエラーにつながります...何が欠けていますか?
編集1
listViewCreationは、次のように呼び出されます。
$("#pageTwo").live("pageshow", function(e, data){
listViewCreation();
});
編集2 別のサーバーからリモートデータをフェッチしています。これがエラーの原因のようです。しかし、それを解決する方法がわかりません...両方のページ(1と2)でデータをフェッチしています。最初のページでは機能しますが、2番目のページでは機能しません...
$.getJSON(url, function(data) {
...
}