2012-04-07 5 views
0

この質問/回答はrefresh dynamic php div using jqueryです。 AlexおよびTJ.この質問に対する回答二度の方法が私のために働いた!しかし、私は大きな問題を抱えているとき、私のdivの私のjQueryライブラリや他のjqueryのコードは、私はこの問題を解決する必要があります:(私のために動作しないの負荷外部ページdivで外部ページをロードするとjquery codeが動作する

例負荷1:。。

$(document).ready(function() { 
     $('.click').on('click', function (e) { 
      e.preventDefault(); 
      $('.messagelist').html('Please wait...'); 
      $.ajax({ 
       type : 'GET', 
       url : 'messages.php', 
       dataType : 'html', 
       success : function (response) { 
        $('.messagelist').html(response);  
       } 
      }); 
     }); 
    }); 
<a class="click" href="#"> Link TO refresh Div </a> 
<div class="messagelist"> 
<div class="togglespan"><span>+</span></div> 
<div class="togglediv"></div> 
</div> 

負荷2:

<script type="text/javascript"> 
    $(function(){ 
     $('.click').on('click', function(e){ 
      e.preventDefault(); 
      $('.messagelist').text('Please wait...'); 
      $('.messagelist').load('list.php'); 
     }); 
    }); 
    </script> 
    <a class="click" href="#"> Link TO refresh Div </a> 
    <div class="messagelist"> 
    <div class="togglespan"><span>+</span></div> 
    <div class="togglediv"></div> 
    </div> 

今たとえば、私は自分のページ内のトグルdivのために、このコードを持っている。これは働いていない。本当に私の外部のページでは、私はdiv要素をトグルする必要があります。すべてのために働いたjQueryライブラリとコードのために外部のページを読み込む修正する方法外部ページ??これを行うには基本的な方法があります。ありがとう

$(".togglespan").click(function() { 
    if ($(this).next(".togglediv").is(":hidden")) { 
     $(this).next(".togglediv").slideDown("slow"); 
     $(this).children('span').html('+'); 
    } else { 
     $(this).next(".togglediv").slideUp("slow"); 
     $(this).children('span').html('-'); 
    } 
}); 
+0

私は本当にあなたが望むか分かりません。 '.togglespan'は2番目のPHPファイルからロードされていますか? – Alex

+0

はい!ファイル(インデックス/最初のファイルと外部ページ)の両方で。この問題は他のjqueryコードの問題です。実際には、2番目のページ(外部ページ)に参加していないJqueryライブラリとすべてのプラグインとコード – Gcoder

答えて

0

イベントの委任が必要です。あなたのトグルコードの代わりにこれを試してください:

$(".messagelist").on('click', '.togglespan', function (e){ 
    if ($(this).next(".togglediv").is(":hidden")) { 
     $(this).next(".togglediv").slideDown("slow"); 
     $(this).children('span').html('+'); 
    } else { 
     $(this).next(".togglediv").slideUp("slow"); 
     $(this).children('span').html('-'); 
    } 
}); 
+0

は動作しません! jqueryのトグルコードに関する私の問題?または外部ページを読み込むコード?私は他のjqueryコードでこの問題を抱えています。 – Gcoder

関連する問題