色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

讓回調(diào)函數(shù) showResponse 也帶上參數(shù)的代碼

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);
}


這是應(yīng)用 prototype.js 后最常看見的ajax代碼,由于 showResponse 不能直接帶參數(shù),在處理回調(diào)函數(shù)時(shí)有時(shí)候比較麻煩,比如要把返回的html值動(dòng)態(tài)插入到某個(gè)元素里面去。今天終于想到了一種方法來解決這個(gè)問題:


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;
}


匿名函數(shù)這時(shí)充當(dāng)了回調(diào)函數(shù),而showResponse則變成一個(gè)普通方法了。變換了概念,問題就順利解決。
解決了這個(gè)問題,還可以把這兩個(gè)函數(shù)封裝為一個(gè)函數(shù):


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;
}


只需要調(diào)用 demo(url,paras,updateElemID) 就能完成ajax的功能。爽。如果參數(shù)再擴(kuò)展一下,增加一些動(dòng)作函數(shù),就不止是update某個(gè)元素的innerHTML這么簡單了。

JavaScript技術(shù)讓回調(diào)函數(shù) showResponse 也帶上參數(shù)的代碼,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 河津市| 江门市| 修文县| 潮安县| 柯坪县| 阿克苏市| 松阳县| 东光县| 祁阳县| 交城县| 桃园市| 二连浩特市| 永康市| 逊克县| 佛坪县| 磐安县| 瑞昌市| 道孚县| 汨罗市| 宜城市| 台安县| 太仆寺旗| 饶平县| 穆棱市| 苏州市| 昭通市| 虞城县| 涞源县| 石首市| 沁源县| 长汀县| 古浪县| 尚义县| 安义县| 蓬莱市| 年辖:市辖区| 临沧市| 白玉县| 天峨县| 沅江市| 手游|