0

リンクを含む servicesDetails.html というページがあります。URL は以下のようになります。

../Myapp/servicesDetails.html?servicetype=Advanced&serviceid=1208

リンクをクリックすると、いくつかのパラメーターを含む audioListPageという内部ページが読み込まれます。リンクは次のようになります。

<a href="#audioListPage?audioid=123&audiotype=mp3" class="loadAudio" data-role="button" data-mini="true" data-inline="true">

audioListPage が読み込まれると、URL が次のように変わります

../Myapp/servicesDetails.html?servicetype=Advanced&serviceid=1208#audioListPage?audioid=123&audiotype=mp3

audioListPage が読み込まれるときに、audioid と audiotype を使用してユーザーを表示する必要があります。これを行うにはどうすればよいですか?

以下のコメントに基づいて、これを試しました

$.urlParam = function(name){
var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
return results[1] || 0;
}

$('#audioListPage').live('pagecreate',function(event) {
   console.log($.urlParam('audioid '));//this is giving me an error
});

エラーが発生した理由を確認したところ、window.location.href が更新された URL ではなく、../Myapp/servicesDetails.html?servicetype=Advanced&serviceid=1208 のみを提供していることがわかりました。 ) 適切なイベントで

4

2 に答える 2

0

あなたはちょうど解析することができますwindow.location.hash

次の例を参照してください。

JavaScript でクエリ文字列値を取得するにはどうすればよいですか?

そして交換window.location.search

window.location.hash

于 2012-06-29T11:27:05.543 に答える
0

jQM ドキュメントでは、パラメーターに次のプラグインのいずれかを使用することを提案しています。

jQuery Mobile は、内部/埋め込みページへのクエリ パラメータの受け渡しをサポートしていませんが、この機能をサポートするためにプロジェクトに追加できるプラグインが 2 つあります。軽量のページパラメータ プラグインと 、backbone.js または spin.js で使用するためのより完全な機能を備えたjQuery Mobile ルーター プラグインがあります。

ドキュメント: (既知の制限セクションを参照)

于 2012-06-29T13:44:36.597 に答える