国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

讓回調函數 showResponse 也帶上參數的代碼

2024-09-06 12:41:51
字體:
來源:轉載
供稿:網友
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這么簡單了。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 蕉岭县| 南岸区| 遂平县| 江安县| 澜沧| 德昌县| 太康县| 连平县| 和硕县| 敦煌市| 秦安县| 古浪县| 浏阳市| 榆中县| 普宁市| 响水县| 共和县| 北京市| 姚安县| 汪清县| 名山县| 乌苏市| 藁城市| 吉林省| 邵武市| 花垣县| 固始县| 绩溪县| 柳州市| 海门市| 万载县| 巴青县| 岳西县| 曲沃县| 民勤县| 家居| 惠来县| 怀化市| 类乌齐县| 额尔古纳市| 通海县|