首页 > php > uchome二次开发 ajax异步提交数据

uchome二次开发 ajax异步提交数据

2010年6月21日 亲亲宝宝 发表评论 阅读评论

ajax可以有两种方式实现异步提交,一种是get,另一种是post,在uchome中均有简单实现方法.

第一.        先说get方式,调用真是非常的容易

var x = new(‘XML’, ”);

x.get(url, function(s){

//s 就是服务器返回的数据,在这里编写返回后要进行的操作;

});

处理返回一个XML或者HTML格式数据,再用自己用JS控制显示数据。这里要说的是UCHOME经常会碰到一个XML错误的位置。最好使用uchome的showmessage(‘无效的手机号.’);这样会返回一个xml格式的字符串.

第二.        Post提交数据

uchome里面ajax提交数据一般都是get方式,这次需要post提交数据,可能 uchome里面根本没有用到这样的方式提交数据,因为大部分ajax提交数据都是通过表单来提交,就是那个ajaxpost函数。
记得在source下有个script_ajax.js, 于是打开搜索了post,原来这里面是有这个方法的:

aj.post = function(targetUrl, sendString, resultHandle) {

if(targetUrl.indexOf(‘?’) != -1) {

targetUrl = targetUrl + ‘&inajax=1’;

} else {

targetUrl = targetUrl + ‘?inajax=1’;

}

setTimeout(function(){aj.showLoading()}, 500);

if(in_array(targetUrl, Ajaxs)) {

return false;

} else {

Ajaxs.push(targetUrl);

}

aj.targetUrl = targetUrl;

aj.sendString = sendString;

aj.XMLHttpRequest.onreadystatechange = aj.processHandle;

aj.resultHandle = resultHandle;

aj.XMLHttpRequest.open(‘POST’, targetUrl);

aj.XMLHttpRequest.setRequestHeader(‘Content-Type’, ‘application/x-www-form-urlencoded’);

aj.XMLHttpRequest.send(aj.sendString);

}

var x = new Ajax();

url = ‘cp.php?ac=password’;

str = ‘checkPhone=check&phonenumber=1234566789′;

x.post(url, str, function(s){

alert(s);

});

上面的str就是要发送的数据,

即:checkPhone = check,phonenumber=telphone

数据用值对的形式组合,这个和jquery的ajax发送方式类似。

服务器端和正常的表单提交接收数据没有任何区别:

post中的数据则为:

$_POST[‘checkPhone ‘]=’check’;

$_POST[‘phonenumber’]=’1234566789′;

然后按照自己的逻辑去处理就可以了。

分类: php 标签: , 4,398 次阅读
原文链接:http://www.wenhq.com/article/view_608.html
欢迎转载,请注明出处:亲亲宝宝
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.