使用jquery刷新动态php div

我使用php / while循环将mysql结果打印到div中。 现在我需要在点击任何链接,使用jquery插件或代码的按钮后刷新此结果。 单击链接后更好的设计,用户看到任何加载消息(请稍候)和jquery / php打印新结果(刷新div)。 这可能吗? 有办法做到这一点?

我的div是:

 Link TO refresh Div  
<?PHP $result=mysql_query("select * from messages where id<'$lastmsg' order by id desc limit 20"); $count=mysql_num_rows($result);
while($row=mysql_fetch_assoc($result)) {?>
  • NOTE : I dont need To Load From Jquery External File Methods . thanks

    你的脚本无法运行。 您正在混合PHP和HTML:

     $count=mysql_num_rows($result); 
    /*THIS IS WRONG*/ while($row=mysql_fetch_assoc($result))

    我想这就是你想要的:

    创建一个只输出列表的新PHP文件。 叫它,例如list.php

    主文件内容:

      Link TO refresh Div  

    list.php内容:

      
  • 将其添加到主文件的部分:

      

    加载内容。

    添加onclick到您的元素:

     Reload php function 

    创建javascript函数:

     function loadPhp(){ //set a variable for the php function var func = ; //append the php function results to a div using jquery $(element).html(func); } 

    要做你想做的事,你需要使用Ajax。

    1.创建一个单独的PHP文件,其中包含您的mysql结果,即下面创建的html-snippet。

    messages.php的内容:

      
      while($row=mysql_fetch_assoc($result)) {?>

    2.如果您使用的是jQuery,则ajax-request非常简单。 将以下内容添加到当前页面(原样保留当前页面):

     $(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); } }); }); }); 

    我没有测试上面的代码,但它应该工作。