1

.aspx ページ ヘッダー タグに以下のスクリプトを追加しましたが、問題なく完全に動作します。

<script type="text/javascript">
       $('#InfoPage').live('pageshow', function (event) {
           $("#apdf").click(function (e) {
               e.preventDefault();
               var serviceURL = "Default.aspx/GeneratePDF";

               $.ajax({
                   type: "POST",
                   url: serviceURL,
                   data: param = "", // parameter
                   contentType: "application/json; charset=utf-8",
                   dataType: "json",
                   success: successFunc,
                   error: errorFunc
               });

               function successFunc(data) {

                   alert('sucess');
               }

               function errorFunc() {
                   alert('error');
               }

           });
       });
   </script>

後でコードをクリーンアップすることを考え、上記のスクリプトを別の .js ファイルに追加し、ページ ヘッダー タグへのリンクを追加しました。

<script type="text/javascript" src="PDFScript.js"/>

その後、突然、Webページの動作が停止し、静的コンテンツが表示されていなくても何もレンダリングされませんでした. これが起こる特定の理由はありますか?

以下も試してみました。

<div data-role="page" id="InfoPage">
 <script type="text/javascript" src="PDFScript.js"/>
</div> 
4

2 に答える 2

2

タグの<script type="text/javascript" src="PDFScript.js"/>前にインポートします。</body>それ以外の場合は、jQuery、jQuery Mobile js ライブラリの後に必ずインポートしてください。

jQuery 1.9.x を使用している場合は、うまくいきliveません。メソッドを使用する必要があります.on()

$(document).on('pageshow', '#InfoPage', function(){
   // your code goes here
});
于 2013-03-29T08:50:21.693 に答える
1

これを変える:

$('#InfoPage').live('pageshow', function (event) {

これに:

$(document).live('pageshow', '#InfoPage' ,function (event) {

これをよりよく理解するには、この記事 (私のものではありません) を読んでください: http://jqfundamentals.com/chapter/eventsの章を探してください:イベント委任

于 2013-03-29T08:46:24.203 に答える