让回调函数 showResponse 也带上参数的代码

圆论自由

圆论自由

2016-02-19 09:21

图老师设计创意栏目是一个分享最好最实用的教程的社区,我们拥有最用心的各种教程,今天就给大家分享让回调函数 showResponse 也带上参数的代码的教程,热爱PS的朋友们快点看过来吧!
function demo(){
var url="ajaxdemo.asp";
var paras = "" ;
var myAjax = new Ajax.Request(
url,
{
method: 'post',
parameters: paras,
onComplete: showResponse
});
}
function showResponse(originalRequest){
var html = originalRequest.responseText;
alert(html);
}


这是应用 prototype.js 后最常看见的ajax代码,由于 showResponse 不能直接带参数,在处理回调函数时有时候比较麻烦,比如要把返回的html值动态插入到某个元素里面去。今天终于想到了一种方法来解决这个问题:


function demo(){
var url="ajaxdemo.asp";
var paras = "" ;
var myAjax = new Ajax.Request(
url,
{
method: 'post',
parameters: paras,
onComplete: function(originalRequest){showResponse(originalRequest,elemID)}
});
}
function showResponse(originalRequest,elemID){
var html = originalRequest.responseText;
$(elemID).innerHTML = html;
}


匿名函数这时充当了回调函数,而showResponse则变成一个普通方法了。变换了概念,问题就顺利解决。
解决了这个问题,还可以把这两个函数封装为一个函数:


function demo(url,paras,updateElemID){
var myAjax = new Ajax.Request(
url,
{
method: 'post',
parameters: paras,
onComplete: function(originalRequest){showResponse(originalRequest,updateElemID)}
});
}
function showResponse(originalRequest,elemID){
var html = originalRequest.responseText;
$(elemID).innerHTML = html;
}


只需要调用 demo(url,paras,updateElemID) 就能完成ajax的功能。爽。如果参数再扩展一下,增加一些动作函数,就不止是update某个元素的innerHTML这么简单了。
展开更多 50%)
分享

猜你喜欢

让回调函数 showResponse 也带上参数的代码

Web开发
让回调函数 showResponse 也带上参数的代码

ajax回调函数参数传递正确方法

Web开发
ajax回调函数参数传递正确方法

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

声明函数指针并实现回调

C语言教程 C语言函数
声明函数指针并实现回调

深入VC回调函数的使用详解

编程语言 网络编程
深入VC回调函数的使用详解

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

回调函数与Delphi的事件模型

Delphi
回调函数与Delphi的事件模型

C/C++中回调函数初探

编程语言 网络编程
C/C++中回调函数初探

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

解析c++中的默认operator=操作的详解

解析c++中的默认operator=操作的详解

SQL 语句优化方法30例

SQL 语句优化方法30例
下拉加载更多内容 ↓