2012-01-06 11 views
1

jScrollPane - v2.0.0beta11 - 2011-07-04とJquery 1.7.1で戦っています。JScery jscrollpane ajaxコンテンツがペインオブジェクトに読み込まれない

私はajax呼び出しを使用して、コンテンツでdivを設定しています。 古いjscrollpaneでは、単にajax経由でコンテンツをロードしてから、成功するとdivにjscollpaneメソッドを適用します。これで分かりましたが、divのメソッドを呼び出してオブジェクトを初期化し、jscrollpaneによって変更されたdivの代わりにペインオブジェクトにコンテンツをロードする必要があります。

私はこれをやっていますが、コンテンツが読み込まれていません。

//initialise jscrollpane on page load 

    $(document).ready(function() { 
    api = $('#functionsWindow').jScrollPane().data('jsp'); 
    } 

    //ajax script 
    function ajaxFromLink(page,querystring,target){ 

    theTarget = document.getElementById(target); 
    $.ajax({ 
    type: "POST", 
    url: page, 
    data: querystring, 
    success: function(msg){ 
     if (theTarget != ''){ 
      if(theTarget.id == 'functionsWindow'){ 
       api.getContentPane().html(msg); 
       api.reinitialise(); 
       console.log('api method: ' + msg); 
      }else{ 
       console.log('normal method: ' + msg); 
       $(theTarget).html(msg); 
      } 
     } 
    } 

    } 

この行api.getContentPane().html(msg);コンテンツを挿入していません。コンテンツがサーバーから返されていることを確認できます。

jscrollpane onLoadを初期化せず、代わりに最初のajax呼び出しで実行すると、スクロールバーが機能します。その後のajax投稿は機能しません。私は何が欠けているのか分からない。あなたの助けに感謝します。

答えて

1

api変数をグローバルスコープで定義すると正常に動作するはずです。お試しください

var api; 

    $(document).ready(function() { 
     api = $('#functionsWindow').jScrollPane().data('jsp'); 
    }); 

    //ajax script 
    function ajaxFromLink(page,querystring,target){ 

     theTarget = document.getElementById(target); 
     $.ajax({ 
     type: "POST", 
     url: page, 
     data: querystring, 
     success: function(msg){ 
      if (theTarget != ''){ 
       if(theTarget.id == 'functionsWindow'){ 
        api.getContentPane().html(msg); 
        api.reinitialise(); 
        console.log('api method: ' + msg); 
       }else{ 
        console.log('normal method: ' + msg); 
        $(theTarget).html(msg); 
       } 
      } 
     } 

     }); 
    } 
+0

あなたは間違ったことをしています。どこからajaxFromLinkを呼びますか? – ShankarSangoli

+0

まだ同じ問題が発生しています。サーバーは正しいデータを返していますが、divに挿入されていません。実際には、jscrollpane divのすべてが元のターゲットdivから紛失してしまいます。 –

+0

リンクボタンからajaxを呼び出しています。 –

関連する問題