热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

AjaxBlog用到的几个函数第1/3页

AjaxBlog用到的几个函数
类名:AJAX 
代码如下:

/*类名:AJAX

创建方法:var ajaxobj=new AJAX;,如果创建失败则返回false

属性:method  -  请求方法,字符串,POST或者GET,默认为POST
   url       - 请求URL,字符串,默认为空
   async     - 是否异步,true为异步,false为同步,默认为true
   content   - 请求的内容,如果请求方法为POST需要设定此属性,默认为空
      backtext  - 默认true当backtext=true时返回XMLHttp.responseText为false时返回XMLHttp.responseXML 
      gettext  - 返回值
   callback  - 回调函数,即返回响应内容时调用的函数,默认为直接返回,回调函数有一个参数为XMLHttpRequest对象,即定义回调函数时要这样:function mycallback(xmlobj)

方法:send()     -  发送请求,无参数

*/

function AJAX() {
    var XMLHttp = false;
    var ObjSelf;
    ObjSelf=this;
    try { XMLHttp=new XMLHttpRequest; }
    catch(e) {
        try { XMLHttp=new ActiveXObject("MSXML2.XMLHttp"); }
        catch(e2) {
            try { XMLHttp=new ActiveXObject("Microsoft.XMLHttp"); }
            catch(e3) { XMLHttp=false; }
        }
    }
    if (!XMLHttp) return false;
    this.method="POST";
    this.url=""
    this.url += (this.url.indexOf("?") >= 0) ? "&nowtime=" + new Date().getTime():"?nowtime=" + new Date().getTime();
    this.async=true;
    this.data="";
    ObjSelf.loadid=""
    this.backtext=true
    this.callback=function() {return;}

    this.send=function() {
        if(!this.method||!this.url||!this.async) return false;
        XMLHttp.open (this.method, this.url, this.async);
        if(this.method=="POST"){
            XMLHttp.setRequestHeader("Content-Length",(this.data).length); 
            XMLHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
        }

        XMLHttp.Onreadystatechange=function() {
            if(XMLHttp.readyState==4) {
                //alert(ObjSelf.loadid);
                if (ObjSelf.loadid!="") $CS(ObjSelf.loadid,"none");
                //window.status="";
                if(XMLHttp.status==200) {
                    ObjSelf.callback();
                }
            }
            else {
                if (ObjSelf.loadid!="") $CS(ObjSelf.loadid,"block");
                //window.status="状态:["+XMLHttp.readyState+"]正在加载......";
            }
        }

        if(this.method=="POST") XMLHttp.send(this.data);
        else XMLHttp.send(null);
    }

    this.gettext=function(){
        if(XMLHttp.readyState==4) {
            if(XMLHttp.status==200) {
                if (this.backtext==true){
                    return XMLHttp.responseText;
                }else{
                    return XMLHttp.responseXML;
                }     
            }
            }
    }
}



blog.js
代码如下:

//打开和关闭左栏
function $SHleft(id){
     if($(id).style.display=='none'){
        $(id).style.display='block';
        $("content").style.;
        $F("sh","隐藏左栏");
    }
    else{
        $(id).style.display='none';
        $("content").style.;
        $F("sh","打开左栏");
    }
}
//打开和关闭评论
function $PL(id,plid){  
  if($("rp"+id).style.display=='none'){
     $("rp"+id).style.display='block';
     $F("pl"+id,"隐藏评论");
     replycon(id,"rp"+id);
    }
    else{
      $("rp"+id).style.display='none';
      $F("pl"+id,"查看评论");
    }
}

//显示日志
function show(id,pageid,rq){
    var ajaxobj=new AJAX();   
    ajaxobj.method="GET"; 
    ajaxobj.loadid="loadnews";
    ajaxobj.url="lib.asp?action=show&sid="+id+"&rq="+escape(rq)+"&page="+pageid;
    ajaxobj.callback=function(){
    $F("bkcon",ajaxobj.gettext());
    }
    ajaxobj.send(); 
}
//显示日志分类列表
function board(){
    var ajaxobj=new AJAX();   
    ajaxobj.method="GET"; 
    ajaxobj.loadid="loadnews";
    ajaxobj.url="lib.asp?action=board";
    ajaxobj.callback=function(){
    $F("blogcon",ajaxobj.gettext());
    }
    ajaxobj.send(); 
}

//取得评论内容
function replycon(rid,rpid){
    var ajaxobj=new AJAX();   
    ajaxobj.method="GET"; 
    ajaxobj.loadid="loadnews";
    ajaxobj.url="lib.asp?action=replycon&rid="+rid;
    ajaxobj.callback=function(){
    $F(rpid,ajaxobj.gettext());
    }
    ajaxobj.send(); 
}

//取得评论数量
function plnum(rid){
    var ajaxobj=new AJAX();   
    ajaxobj.method="GET"; 
    ajaxobj.loadid="loadnews";
    ajaxobj.url="lib.asp?action=plnum&rid="+rid;
    ajaxobj.callback=function(){
    $F("plnum"+rid,ajaxobj.gettext());
    }
    ajaxobj.send(); 
}

//加载发表评论表单
function rform(rid){
    var ajaxobj=new AJAX();   
    ajaxobj.method="GET"; 
    ajaxobj.loadid="loadnews";
    ajaxobj.url="lib.asp?action=rform&rid="+rid;
    ajaxobj.callback=function(){
    $F("plform"+rid,ajaxobj.gettext());
    }
    ajaxobj.send(); 
}

//添加评论内容
function savepl(rid){
    var ajaxobj=new AJAX();   
    ajaxobj.method="POST"; 
    ajaxobj.loadid="loadnews";
    ajaxobj.url="lib.asp?action=savepl&";
    ajaxobj.data="rid="+rid+"&username="+escape($("username"+rid).value)+"&con="+escape($("con"+rid).value);
    ajaxobj.callback=function(){
    $F("tjpl"+rid,ajaxobj.gettext());
    if (ajaxobj.gettext().indexOf("评论已提交成功")>=0) {
       //如果评论提交成功则关闭表单、重新取得评论的数量。关闭成功提示信息
        $CS("rform"+rid,"none");
        plnum(rid);
        pltjid="pltjsuc"+rid;
        setTimeout('$CS(pltjid,"none")',1000);
    }
    }
    ajaxobj.send(); 
}
//显示日历
function rl(ReqDate){
    var ajaxobj=new AJAX();   
    ajaxobj.method="GET"; 
    ajaxobj.loadid="loadnews";
    ajaxobj.url="lib.asp?action=rl&ReqDate="+ReqDate;
    ajaxobj.callback=function(){
    $F("calendarcon",ajaxobj.gettext());
    }
    ajaxobj.send(); 
}
//显示留言表单
function gb(){
    var ajaxobj=new AJAX();   
    ajaxobj.method="GET"; 
    ajaxobj.loadid="loadnews";
    ajaxobj.url="lib.asp?action=gb";
    ajaxobj.callback=function(){
    $F("gbform",ajaxobj.gettext());
    }
    ajaxobj.send(); 
}

//提交留言
function savegb(){
    var gbusername=$("gbusername").value;
    var gbemail=$("gbemail").value;
    var gbcon=$("gbcon").value;
    //alert($("gbusername").value);
    //alert($("gbemail").value);
    //alert($("gbcon").value);
    //return false;
    if (gbusername==""){
        $CS("gberr","block");
        $F("gberr","请署上你的大名");
        setTimeout('$CS("gberr","none")',2000);
        return false;
    }
    if (gbemail==""){
        $CS("gberr","block");
        $F("gberr","请写上你的邮箱");
        setTimeout('$CS("gberr","none")',2000);
        return false;
    }
    if (gbcon==""){
        $CS("gberr","block");
        $F("gberr","请发表你的意见");
        setTimeout('$CS("gberr","none")',2000);
        return false;
    }
    var ajaxobj=new AJAX();   
    ajaxobj.method="POST"; 
    ajaxobj.loadid="loadnews";
    ajaxobj.url="lib.asp?action=addgb&";
    ajaxobj.data="username="+escape(gbusername)+"&email="+escape(gbemail)+"&con="+escape(gbcon);
    ajaxobj.send(); 
    ajaxobj.callback=function(){
        if (ajaxobj.gettext().indexOf("成功")>=0) {
        $SHwin("gb");
        showgb(1);
        }
    }    
}
//显示留言
function showgb(pageid){
    var ajaxobj=new AJAX();   
    ajaxobj.method="GET"; 
    ajaxobj.loadid="loadnews";
    ajaxobj.url="lib.asp?action=showgb&page="+pageid;
    ajaxobj.callback=function(){
    $F("bkcon",ajaxobj.gettext());
    }
    ajaxobj.send(); 
}

123下一页阅读全文

推荐阅读
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文讲述了如何通过代码在Android中更改Recycler视图项的背景颜色。通过在onBindViewHolder方法中设置条件判断,可以实现根据条件改变背景颜色的效果。同时,还介绍了如何修改底部边框颜色以及提供了RecyclerView Fragment layout.xml和项目布局文件的示例代码。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文讨论了在Spring 3.1中,数据源未能自动连接到@Configuration类的错误原因,并提供了解决方法。作者发现了错误的原因,并在代码中手动定义了PersistenceAnnotationBeanPostProcessor。作者删除了该定义后,问题得到解决。此外,作者还指出了默认的PersistenceAnnotationBeanPostProcessor的注册方式,并提供了自定义该bean定义的方法。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • Android系统移植与调试之如何修改Android设备状态条上音量加减键在横竖屏切换的时候的显示于隐藏
    本文介绍了如何修改Android设备状态条上音量加减键在横竖屏切换时的显示与隐藏。通过修改系统文件system_bar.xml实现了该功能,并分享了解决思路和经验。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
  • 本文介绍了在使用MSXML解析XML文件时出现DTD禁用问题的解决方案。通过代码示例和错误信息获取方法,解释了默认情况下DTD是禁用的,以及如何启用DTD的方法。此外,还提到了网上关于该问题的信息相对较少,因此本文提供了解决方案以供参考。 ... [详细]
author-avatar
落梓-
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有