2012-05-10 12 views
0

モバイルデバイスを使用するのではなく、Safariを使用して開発中にjQuery Mobileアプリケーションをテストできるという印象があります。このjQuery Mobileフォームが正しくAJAXでないのはなぜですか?

すると、WindowsのI

AJAXではありません。その代わりに、新しいURLをロードします:

http://jquerymobile.com/test/docs/forms/forms-sample-response.php?shipping=Standard+shipping&submit=submit-value 

は、間違った私の期待にいる私はそれが間違ってやっている、またはjQueryのモバイルに何か問題はありますか?

答えて

1

私は何かが間違っているとは思わない、私はあなたがちょうどjQuery Mobileにだまされていると思う。

ページ全体がリフレッシュされているように見えることがありますが、そうではありません。開発者ツールの[ネットワーク]タブを見ると、PHPページのXHRリクエストが表示されます。それはpushStateプラグインだとその後のjQuery Mobileは、アドレスバーにURLを変更している

:一般的な意味でhttp://jquerymobile.com/test/docs/pages/page-navmodel.html

、はい、あなたは開発のためのデスクトップブラウザを使用することはできますが、テストに移動する際の問題のために準備ができてデバイス上で場合によっては何も得られない場合もありますが、現在のモバイルブラウザには不愉快なバグがあります。

+0

ああ、ありがとう!どのように私はドキュメントでそれを逃したか分からない。私の場合は、AJAXingのページにはレイアウト全体ではなくページの内容しか含まれていないため、 'pushState'を無効にします。それ以外の場合、ユーザーがpushState URLを使用してページを更新すると、レイアウトやCSSなどが表示されません。AJAXリクエストかどうかを検出して、それに応じてレイアウトをレンダリングすることができます。この点で共通のパターン? – RedFilter

+0

pushStateプラグインを無効にすると、次のようなハッシュタグURLが取得されます。/index.html#/some-folder/index.htmlしかし、通常のインデックスページを読み込んでjQuery Mobileがハッシュタグを検出し、その場所からAJAX経由でコンテンツを取得するため、これはうまくいくはずです。 – Jasper

関連する問題