ajax发表 读取 评论

所属分类: 网络编程 / AJAX相关 阅读数: 1572
收藏 0 赞 0 分享
复制代码 代码如下:

-----------------------------Jack的注释  ajaxJS.js-----------------------------

//这里是显示一个等待的窗口
document.write('<DIV id="loadingg"  style="HEIGHT:65px; WIDTH: 205px;POSITION: absolute; Z-INDEX:1000;border:3px #fff solid;text-align:center; font-size:12px; font-family:Arial, Helvetica, sans-serif;color:#660000;background:#222;opacity:.7;-moz-opacity:.7;filter: alpha(opacity=70); display:none;"><br/><font color="#FF6600"><strong>数据正在读取中,请等候...</strong>< /font><br/></DIV>')
//showloading控制等待窗口的显示和隐藏
function showloading()
{
var obj=document.getElementById("loadingg")
if (obj.style.display!="")
{
obj.style.left=((document.documentElement.clientWidth-parseFloat (obj.style.width))/2)+document.documentElement.scrollLeft+"px";
obj.style.top=((document.documentElement.clientHeight-parseFloat (obj.style.height))/2)+document.documentElement.scrollTop+"px";
obj.style.display="";
}else{obj.style.display="none";}
}

//$()取得指定ID的对象
function $(id)
{
 return document.getElementById(id); 
}
//echo()向指定的对象obj显示指定的html
function echo(obj,html)
{
 $(obj).innerHTML=html;
}
//fopen()使指定的obj处于显示状态
function fopen(obj)
{
 $(obj).style.display="";
}
//fclose()使指定的obj处于隐藏状态
function fclose(obj)
{
 $(obj).style.display="none";
}
//createxmlhttp()获取XMLHttpRequest对象并返回
function createxmlhttp()
{
 var xmlhttp=false;
 try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  }
 catch (e) {
    try {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
  catch (e) {
      xmlhttp = false;
   }
  }
 if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
    xmlhttp = new XMLHttpRequest();
    if (xmlhttp.overrideMimeType) {//设置MiME类别
   xmlhttp.overrideMimeType('text/xml');
  }
 } 

 return xmlhttp; 
}
//getdata()获取指定URL的数据在obj2里面显示,obj1是本过程的提示信息,可删除
function getdata(url,obj1,obj2)
{
  var xmlhttp=createxmlhttp();
  if(!xmlhttp)
  {
   alert("你的浏览器不支持XMLHTTP!!");
   return;
  }
  showloading()
  xmlhttp.onreadystatechange=requestdata;
  xmlhttp.open("GET",url,true);
  xmlhttp.send(null);
  function requestdata()
  {

    fopen(obj1);
    //echo(obj1,"正在加载数据,请稍等......");
    //alert(xmlhttp.readyState)
    if(xmlhttp.readyState==4)
    {
     if(xmlhttp.status==200)
     {
      if(obj1!=obj2){fclose(obj1);};
      echo(obj2,xmlhttp.responseText);
      showloading()
     }
    }

  }
}
//postdata()发送指定的数据data到url地址,并且使用obj来显示返回的数据
function postdata(url,obj,data)
{       var rnd=Math.random()
  var xmlhttp=createxmlhttp();
  if(!xmlhttp)
  {
   alert("你的浏览器不支持XMLHTTP!!");
   return;
  }
  showloading()
  xmlhttp.open("POST", url, true);
  xmlhttp.onreadystatechange=requestdata;
  xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  xmlhttp.send(data);
  function requestdata()
  {
   fopen(obj);
   echo(obj,"正在提交数据,请稍等......");
   if(xmlhttp.readyState==4)
   {
    if(xmlhttp.status==200)
    {
     echo(obj,xmlhttp.responseText);
     reget(rnd);
     setTimeout("echo('showresult','')",2000);
     echo('Message','')
     showloading()
    }
   }
  }
}
//lTrim()去掉字符串左边的空格
function lTrim(str)
{
  if (str.charAt(0) == " ")
  {
    //如果字串左边第一个字符为空格
    str = str.slice(1);//将空格从字串中去掉
    //这一句也可改成 str = str.substring(1, str.length);
    str = lTrim(str);    //递归调用
  }
  return str;
}

//rTrim()去掉字串右边的空格
function rTrim(str)
{
  var iLength;

  iLength = str.length;
  if (str.charAt(iLength - 1) == " ")
  {
    //如果字串右边第一个字符为空格
    str = str.slice(0, iLength - 1);//将空格从字串中去掉
    //这一句也可改成 str = str.substring(0, iLength - 1);
    str = rTrim(str);    //递归调用
  }
  return str;
}

//trim()去掉字串两边的空格
function trim(str)
{
  return lTrim(rTrim(str));
}


//f()没有通用的意义,只针对特定对象
function f(obj)
{
 return trim(eval("document.ajax_post."+obj+".value"));
 //return trim($(obj).value);
}
//SaveReply()是表单的检查提交函数
function SaveReply()
{
 if(f("username")=="")
 {
  alert("请填写用户名");
  return false;
 }
 if(f("Message")=="")
 {
  alert("内容不可為空");
  return false;
 }
 var validate,password,log_DisKey=0,log_DisURL=0,log_DisSM=0
 validate=""
 password=""
 if(document.ajax_post.log_DisKey.checked){
  log_DisKey=f("log_DisKey")
  }
 if(document.ajax_post.log_DisURL.checked){
  log_DisURL=f("log_DisURL")
  }
 if(document.ajax_post.log_DisSM.checked){
  log_DisSM=f("log_DisSM")
  }
 if((typeof eval(document.ajax_post.validate))!="undefined"){
  if(f("validate")=="")
  {
   alert("请填写验证码");
   return false;
  }else{
   validate=f("validate");
  }
 } 
 if((typeof eval(document.ajax_post.password))!="undefined"){
  password=f("password");
 }
 data="username="+escape(f("username"))+"&password="+escape(password)+"&validate="+escape(validate)+"&log_DisSM="+escape(log_DisSM)+"&log_DisURL="+escape(log_DisURL)+"&log_DisKey="+escape(log_DisKey)+"&Message="+escape(f("Message"))+"&logID="+escape(f("logID"))+"&action="+escape(f("action"));
    //alert(data);
 postdata("wbc_blogcomm.asp","showresult",data);
 return true;
}


调用:
复制代码 代码如下:

<div id=ShowComm></div>
                <script language="javascript" type="text/javascript" src="ajaxJS.js"></script>  
                <script language="javascript" type="text/javascript"> 
                  function reget(str){ 
                 getdata('wbc_ShowComm.asp?LogID=100&comDesc=Desc&DisComment=False&0.5675318&'+str,'ShowComm','ShowComm');
                }
                 reget('get');
                </script>
更多精彩内容其他人还在看

ajax和jsonp跨域的原理本质详解

跨域问题是我们在开发中经常会遇到的一个需求,下面这篇文章主要给大家介绍了关于ajax和jsonp跨域的原理本质,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
收藏 0 赞 0 分享

ajax获取json数据为undefined原因分析

Ajax 允许在不干扰 Web 应用程序的显示和行为的情况下在后台进行数据检索。这篇文章主要介绍了ajax获取json数据为undefined--原因,需要的朋友可以参考下
收藏 0 赞 0 分享

ajax实现用户名校验的传统和jquery的$.post方式(实例讲解)

下面小编就为大家分享一篇ajax实现用户名校验的传统和jquery的$.post方式的实例讲解,具有很好的参考价值,希望对大家有所帮助
收藏 0 赞 0 分享

ajax中用josnp接收josn数据的实现方法

下面小编就为大家分享一篇ajax中用josnp接收josn数据的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

ajax跨域获取网站json数据的实例

下面小编就为大家分享一篇ajax跨域获取网站json数据的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

关于前端ajax请求的优雅方案(http客户端为axios)

这篇文章主要给大家介绍了关于前端ajax请求的优雅方案,本文http客户端为axios,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
收藏 0 赞 0 分享

快速解决ajax请求出错状态码为0的问题

下面小编就为大家分享一篇快速解决ajax请求出错状态码为0的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

ajax实现改变状态和删除无刷新的实例

下面小编就为大家分享一篇ajax实现改变状态和删除无刷新的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

ajax结合mysql数据库和smarty实现局部数据状态的刷新方法

下面小编就为大家分享一篇ajax结合mysql数据库和smarty实现局部数据状态的刷新方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Ajax客户端异步调用服务端的实现方法(js调用cs文件)

下面小编就为大家分享一篇Ajax客户端异步调用服务端的实现方法(js调用cs文件),具有很好的参考价值,希望对大家有所帮助
收藏 0 赞 0 分享
查看更多