`
yeahfeng
  • 浏览: 16604 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

Ajax异步调用函数,同步调用函数举例

    博客分类:
  • AJAX
阅读更多

var xmlhttp;
//ajax 异步调用
function loadXMLDocAsyn(url, cfunc) {
	if (window.XMLHttpRequest) {
		// code for IE7+, Firefox, Chrome, Opera, Safari
		xmlhttp = new XMLHttpRequest();
	} else {
		// code for IE6, IE5
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.onreadystatechange = cfunc;
	xmlhttp.open("GET", url, true);
	xmlhttp.send();
}

//ajax 同步调用
function loadXMLDocSyn(url) {
	if (window.XMLHttpRequest) {
		// code for IE7+, Firefox, Chrome, Opera, Safari
		xmlhttp = new XMLHttpRequest();
	} else {
		// code for IE6, IE5
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.open("GET", url, false);
	xmlhttp.send();
	return xmlhttp.status;
}
 //检查用户名是否合法,包括客户端检查和服务端ajax调用
function checkName(){
	var username = document.getElementById("username").value;
	document.getElementById("tip").innerHTML = " ";
	if(username.length==0){	//用户名格式检查
		document.getElementById("tip").innerHTML = "<font color='#FF0000'>用户名不能为空</font>";
		document.getElementById("username").focus();
		document.getElementById("flag").value = "false";
	}else{//调用ajax检查用户名是否重复
		loadXMLDocAsyn("action/checkNameAction.php?username="+username, getResult);
//**************************************************************/
//以下是同步调用实现方式		
//		var status = loadXMLDocSyn("action/checkNameAction.php?username="+username);
//		if(status==200){
//			if(xmlhttp.responseText.length!=0){
//				document.getElementById("tip").innerHTML = "<font color='#FF0000'>用户名已被占用</font>";
//				document.getElementById("username").focus();
//				document.getElementById("flag").value = "false";
//			}else{
//				document.getElementById("flag").value = "true";
//			}
//		}
//******************************************************************/		
	}
}


//用户名查重checkName()中ajax的回调函数
function getResult() {
	if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
		if(xmlhttp.responseText.length!=0){
			document.getElementById("tip").innerHTML = "<font color='#FF0000'>用户名已被占用</font>";
			document.getElementById("username").focus();
			document.getElementById("flag").value = "false";
		}else{
			document.getElementById("flag").value = "true";
		}
	}
}
 
分享到:
评论

相关推荐

    AJAX基础概念、核心技术与典型案例(内涵动态实例)

    AsyncAjaxSample Ajax异步调用的完整示例 第2章(/C02/) 2.1.htm 3段JS使用形式 2.2.htm 不同浏览器使用“&lt;noscript&gt;&lt;/noscript&gt;” 2.3.htm 调用单独的JS文件 2.3.js 一个单独的...

    jquery插件使用方法大全

    延迟对象 延迟对象(Deferred Object,jQuery.Deferred对象)是一个可链接的(chainable)实用工具对象,实现了Promise接口,可以在回调队列中注册多个回调、调用回调队列并转发任何同步/异步函数的成败状态。...

    千方百计笔试题大全

    143、能象调用子程序一样调用JSP吗? 36 144、当我重编译我的JSP使用的一个类后,为什么JVM继续使用我的老CLASS? 36 145、 file="abc.jsp"%&gt;与 page="abc.jsp"/&gt;之间的差别? 36 146、JSP的缺点? 36 148、如何...

    java面试宝典

    143、能象调用子程序一样调用JSP吗? 36 144、当我重编译我的JSP使用的一个类后,为什么JVM继续使用我的老CLASS? 36 145、与之间的差别? 36 146、JSP的缺点? 36 148、如何实现JSP的国际化? 36 150、如何在JSP中...

    最新Java面试宝典pdf版

    48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 32 49. 下面两个方法同步吗?(自己发明) 33 50、多线程有几种实现方法?同步有几种实现方法? 33 51、启动一个线程是用run()还是start()? . 33 52、...

    Java面试笔试资料大全

    48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 32 49. 下面两个方法同步吗?(自己发明) 33 50、多线程有几种实现方法?同步有几种实现方法? 33 51、启动一个线程是用run()还是start()? . 33 52、...

    Java面试宝典2010版

    48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 49. 下面两个方法同步吗?(自己发明) 50、多线程有几种实现方法?同步有几种实现方法? 51、启动一个线程是用run()还是start()? . 52、当一个...

    Java面试宝典-经典

    48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 32 49. 下面两个方法同步吗?(自己发明) 33 50、多线程有几种实现方法?同步有几种实现方法? 33 51、启动一个线程是用run()还是start()? . 33 52、...

    JAVA面试宝典2010

    48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 32 49. 下面两个方法同步吗?(自己发明) 33 50、多线程有几种实现方法?同步有几种实现方法? 33 51、启动一个线程是用run()还是start()? . 33 52、...

    java面试题大全(2012版)

    48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 32 49. 下面两个方法同步吗?(自己发明) 33 50、多线程有几种实现方法?同步有几种实现方法? 33 51、启动一个线程是用run()还是start()? . 33 52、...

    Java面试宝典2012版

    48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 32 49. 下面两个方法同步吗?(自己发明) 33 50、多线程有几种实现方法?同步有几种实现方法? 33 51、启动一个线程是用run()还是start()? . 33 ...

    java面试宝典2012

    48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 36 49. 下面两个方法同步吗?(自己发明) 36 50、多线程有几种实现方法?同步有几种实现方法? 36 51、启动一个线程是用run()还是start()? . 37 52、...

    Java面试宝典2012新版

    48、同步和异步有何异同,在什么情况下分别使用他们?举例说明。 32 49. 下面两个方法同步吗?(自己发明) 33 50、多线程有几种实现方法?同步有几种实现方法? 33 51、启动一个线程是用run()还是start()? . 33 52、...

    java面试题

    13. 同步和异步有何异同,在什么情况下分别使用他们?举例说明。 11 14. 简述synchronized和java.util.concurrent.locks.Lock的异同 ? 11 15. 当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    Symbol 含义 举例 #PCDATA 包含字符或文本数据 (#PCDATA)&gt; 元素MYFILE包含一个文本数据 #PCDATA, element-name 包含文本和其它子元素 (#PCDTATA,TITLE)&gt; MYFILE元素必须包含文本和TITLE子元素 , 使用逗号分隔排序 ...

    Java 面试宝典

    29、super.getClass()方法调用 .......................................................................... 22 30、String 是最基本的数据类型吗? ..............................................................

Global site tag (gtag.js) - Google Analytics