2014-01-07 2 views
0

Я столкнулся с проблемой JQueryJQuery + PHP нагрузки более

вот мой код

<script type='text/javascript' src='jquery-1.10.2.min.js'></script> 
<script type="text/javascript"> 
$(function() { 
$(".more2").click(function() { 
    var element = $(this); 
    var msg = element.attr("id"); 

    $.ajax({ 
    type: "POST", 
     url: "insta2.php", 
     data: "lastmsg="+ encodeURIComponent(msg), 

      success:function (data) { 

       $("#morebutton").replaceWith(data); 

      } 
}); 



    return false; 
    }); 
}); 
</script> 



    <span class="more" id="morebutton"> 
    <a id="1" class="more2" title="Follow" href="#" style="color:#000"> 
       Read More 
</a> 
</span> 

и здесь insta2.php

<?php 

if(isset($_POST['lastmsg'])) 
{ 
$a= $_POST['lastmsg']; 
$a = $a++; 
?> 
<br> 
    <span class="more" id="morebutton"> 
    <a id="<?php echo $a;?>" class="more2" title="Follow" href="#" style="color:#000"> 
    <?php echo $a;?>   Read More 
</a> </span> 
<?php }?> 

мой Jquery только один 1 комплект и после этого каждый клик не работает

Есть ли способ продолжить подсчет?

как этот

Подробнее 1 Подробнее 2 Подробнее 3 Подробнее 4 Подробнее и так далее ...

ответ

0

Ваш ajaxed в содержании не присоединил JQuery слушателя к нему. В основном, ваш jquery будет работать только на вашем исходном HTML.

Вы можете привязать событие click к элементу, который всегда находится на странице, используя функцию .on(), и использовать параметр селектора, чтобы определить ваши дополнительные ссылки. (Пожалуйста, прочитайте руководство jQuery для получения дополнительной информации об этом).

Например:

$('body').on('click', 'span.more', function(){ 
    // Do your ajax stuff 
}); 

Это будет связать событие щелчка, чтобы ваше тело, в отличие от «span.more» и будет работать на любой span.more добавил к телу.

Edit - JS Fiddle:

http://jsfiddle.net/g8G83/

+0

теперь его доза не работает – madman

+0

Проверьте свой ответ на скрипку JS. – Scopey

0
<span id="more"> 
    <a id="1" class="more2" title="Follow" href="#" style="color:#000"> 
     Read More 
    </a> 
</span> 
<script src="http://code.jquery.com/jquery-1.9.1.js"></script> 
<script type="text/javascript"> 
    $(function() { 
     $(".more2").click(function readmore() { 
      var element = $(this); 
      var msg = element.attr("id"); 
      $.ajax({ 
      type: "POST", 
       url: "insta2.php", 
       data: "lastmsg="+ encodeURIComponent(msg), 

        success:function (data) { 
         $("#more").append(data); 
         $(".more2").off("click"); 
         $(".more2").on("click",readmore); 
        } 
      }); 
      return false; 
     }); 
    }); 
</script> 
Смежные вопросы