2017-01-14 2 views
0

以下のコードは動作しません。ロードしたページの特定の部分を削除したい。すべての変更が行われる前に、ページをダイアログに表示しないでください。htmlとJQueryを同期させて表示する方法は?

var $div = $('<div>'); 
     $div.load("../payment/list", function(){ 
      $div.find("#cssmenu").remove(); 
      $div.find("#toolbar").remove(); 
      $div.find("#categoryDialog").remove();    
      $div.find("h1").remove(); 

      $("#paymentDialog2").html($div); 
     }); 

しかし、コンテンツが読み込まれて後で変更されるため、表示が悪くなります。

答えて

0

あなたの代わりに)(AJAXを使用してみてみません理由:

var $div = $('<div>'); 
var response; 

$.ajax({ 
    url: "../payment/list" 
}).done(function(data) { 
    response = data; 
}); 

// remove unwanted elements 
$div.find("#cssmenu").remove(); 
$div.find("#toolbar").remove(); 
$div.find("#categoryDialog").remove();    
$div.find("h1").remove(); 

// append data from ajax response to your container 
$div.append(response); 

// display you content 
$("#paymentDialog2").html($div); 
0

あなたはjqueryのAJAX GET

$.get("../payment/list", function(data) { 
    var $div = $('<div>'); 
    var $data = $(data); 
    $data.find("#cssmenu").remove(); 
    $data.find("#toolbar").remove(); 
    $data.find("#categoryDialog").remove();    
    $data.find("h1").remove(); 

    $div.html($data.html()); 
    $("#paymentDialog2").html($div); 
}); 
+0

ようになり../payment/list。何らかの理由で、それは動作しません削除:$に.get( "../payment/list"、機能(データ){\t \t \t \t変数$ TMP = $(データを); \t \t $ TMPを。 ( "#のcssmenu")を見つける削除();。 \t \t $ tmp.find( "#ツールバー")(削除);。 \t \t $ tmp.find( "#のcategoryDialog")(削除);。 \t \t $ tmp.find( "H1")(削除);。 \t \t \t \t \t \t $( "#paymentDialog2").html($ tmp); \t \t});ここ – tobi

+0

は、作業[plnker](https://plnkr.co/edit/rsW9vrFMfvTuJ77tQK3u?p=preview)の例 –

+0

支払一覧がHTMLデータは本部を言わせplnkerの例のようルート要素でラップされ返されていることを確認しています要素 –

0

に負荷()関数は、コンテンツをロードしたのち理由を使用することができますコールバック関数を実行します。問題を解決するための最善の方法は、CSSを使用することです。親divをレスポンスにしてhiddenにします。ページ要素にそれを付けた後、visibleに設定します。

letが、私はこれを試した後、

<div id="parent" style="display:none"> 
<!-- your page content --> 

</div> 

var $div = $('<div>'); 
      $div.load("../payment/list", function(){ 
       $div.find("#cssmenu").remove(); 
       $div.find("#toolbar").remove(); 
       $div.find("#categoryDialog").remove();    
       $div.find("h1").remove(); 

       $("#paymentDialog2").html($div); 
       $div.find("#parent").removeAttr("style"); 

      }); 
関連する問題