ajax框架0.1版,用函数的方式,未封装(转载)

本文详细介绍了JavaScript中的AJAX技术,包括GET和POST请求方法的使用,以及如何在客户端与服务器进行交互并处理响应数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ajax1.js

/*
使用方法:
ajax_get("url.php",回调函数);
回调函数中有一个参数是文本型的,是服务器返回来的,如果回调函数名是call_back,那么我们可以这样定义它:
function call_back(text_from_server)
{
   alert(text_from_server);
}
注意目前回调函数只有一个参数,参数名可以自定.
ajax_post("url.php","参数",回调函数);和ajax_get大同小异,不再介绍
*/
//--------------------------------------------------------------------框架开始
function getXmlHttpObject()
{
/* Create a new XMLHttpRequest object to talk to the Web server */
var xmlHttp = false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
try {
   xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
   try {
   xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
   } catch (e2) {
   xmlHttp = false;
   }
}
@end @*/
if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
   xmlHttp = new XMLHttpRequest();
}
return xmlHttp;
}
function ajax_get(url,callback)
{
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange =function(){ handleReadyState(callback); }
xmlHttp.send(null);
}
/**
*@ url    处理页面的地址,比如: http://localhost/post.php
*@ param   参数比如 name=yangQingRong&birth=1985&city=jieyang
*@ callback 回调函数的句柄 比如有一个函数function sayHello(name1){},那么我们填"sayHello"
*/
function ajax_post(url,param,callback)
{
xmlHttp.open("POST",url,true);
xmlHttp.onreadystatechange=function(){ handleReadyState(callback); }
xmlHttp.setRequestHeader("Content-Length",param.length);    
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");  
xmlHttp.send(param);
}
function handleReadyState(callback) {
if (xmlHttp.readyState == 4) {
    
    var response = xmlHttp.responseText;
callback(response);
}
}
var xmlHttp=getXmlHttpObject();
//--------------------------------------------------------------------框架结束
ajax.htm
<script language="javascript" src="ajax1.js"></script>
<script language="javascript">
ajax_get("ajax.php",back);
var name="杨庆荣!";
//name= escape(name);
ajax_post("ajax.php","name="+name,back2);
function back2(res)
{ alert(res);
}
function back(res)
{
alert(res);
}
</script>
ajax.php
<?
header("Content-Type:gb2312");
echo "how areyou?";
if(isset($_POST["name"]))
{
echo "hello,".$_POST["name"];
}
?>
<script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/bshareC0.js"></script>
阅读(97) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值