これは jQuery Mobile でよくある問題です。
jQM で document ready を使用しないでください。代わりに、jQM がページ イベントを提供します。問題はドキュメントの準備ができているかどうかであり、通常はページが DOM にロードされる前にトリガーされます。それが更新が役立つ理由です。その時点でページはすでに読み込まれています。
私はあなたに実用的な例を作りました: http://jsfiddle.net/Gajotres/8hKe2/
$(document).on('pagebeforeshow', '#foo', function(){
alert('This is foo');
});
$(document).on('pagebeforeshow', '#bar', function(){
alert('This is bar');
});
基本的に、各ページ イベントは、そのページ専用の JavaScript コードをトリガーします。コードを 1 回だけ実行する場合は、次のように、pagebeforeshow の代わりに pageinit イベントを使用する必要があります。
$(document).on('pageinit', '#foo', function(){
alert('This is foo');
});
$(document).on('pageinit', '#bar', function(){
alert('This is bar');
});
もっと知りたい場合は、私の他の記事/回答をご覧ください: https://stackoverflow.com/a/14469041/1848600