Javascript ajax调用新闻内容并显示

作者:简简单单 2014-05-21

html如下,我们这个页面让dedecms调用数据新闻标签

 代码如下 复制代码

dedecms模板标签是否样

 {dede:arclist typeid='3' row='6' orderby='id'}                           
                                 


  •                                        
                                            javascript:;" onClick="getnewscontent([field:id /])">[field:title /]
                                       

  • {/dede:arclist}

    生成html后页面如下

     代码如下 复制代码




  • 你好我是www.111com.net



  • 你好我是www.111com.net
  • 在上面两句我们要注意有一个onClick="getnewscontent(2)" 里面有一个数字,这个就是我们的新闻ID了,现在我们看getnewscontent() 这个函数

     代码如下 复制代码

    var xmlHttp
    function getnewscontent(newsid)
    {
     xmlHttp=GetXmlHttpObject()
     if (xmlHttp==null)
     {
       alert ("Browser does not support HTTP Request")
       return false;
     }
     
     var url="/getnewscontent.php"
     url=url+"?id="+newsid
     url=url+"&sid="+Math.random()
     xmlHttp.onreadystatechange=stateChanged_n
     xmlHttp.open("GET",url,true)
     xmlHttp.send(null)
    }

    function stateChanged_n()
    {
     if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
     {
      var restext=xmlHttp.responseText;
      document.getElementById('news_scroll').innerHTML=restext;
      $('#news_detail').animate({ 'left': 0 }, 500, 'easeOutQuint');
     }
    }

    代码非常的简单,我们只要利用ajax调用getnewscontent.php,然后再由getnewscontent.php返回值之后我们再把值给news_scroll这个div了,在后面加了一个动态效果$('#news_detail').animate({ 'left': 0 }, 500, 'easeOutQuint'); 这句是基于jquery 的,如果你不加可能没有效果大家还是加一下。

    getnewscontent.php

     代码如下 复制代码

    $id =isset($_GET['id'])?intval($_GET['id']):0;
    if( $id )
    {
     include("data/common.inc.php");
     mysql_connect('localhost',$cfg_dbuser,$cfg_dbpwd) or die('database connect failer');
     mysql_select_db($cfg_dbname);
     mysql_query("set Names '$cfg_db_language'");
     $sql ="select * from ".$cfg_dbprefix.'addonarticle'.' where aid ='.$id;
     $query = mysql_query( $sql ) or die($sql);
     if( mysql_num_rows( $query ) )
     {
      $rs = mysql_fetch_array( $query );
      echo $rs['body'];
     }
     else
     {
      echo '参数错误或记录己被删除!';
     }
    }
    else
    {
     echo '参数错误或记录己被删除!';
    }
    ?>

    这样就搞写了哦,快去试一下吧

    注意一下 news_scroll 这个ID哦,如

    这里面是动态要显示的数据哦
    也是点击新闻ID返回的数值了。

    相关文章

    精彩推荐