麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > AJAX > 正文

JavaScript基礎之AJAX簡單的小demo

2024-09-01 08:33:50
字體:
來源:轉載
供稿:網友

AJAX

AJAX = Asynchronous JavaScript and XML(異步的 JavaScript 和 XML)。

AJAX 不是新的編程語言,而是一種使用現有標準的新方法。

AJAX 是與服務器交換數據并更新部分網頁的藝術,在不重新加載整個頁面的情況下。

function prepareForms() { for(var j=0 ; j<document.forms.length ; j++){  var this_forms = document.forms[j];  resetFields(this_forms);   this_forms.onsubmit = function () {    if(!validateForm(this)) return false; //進行瀏覽器端表單驗證    var article = document.getElementsByTagName("article")[0];    if(submitFormWithAjax(this,article)) return false; //代表防止重復提交 實際的提交已經完成   return true;   } }}

首先 通過表單的提交事件調用相應的驗證方法 和ajax提交方法 如果說ajax提交成功 返回false 攔截提交事件 如果ajax失敗 則正常提交

function displayAjaxLoading(element) { while(element.hasChildNodes()){  element.removeChild(element.lastChild); //如果還有子節點 重復刪除 直到內部為空 } var content = document.createElement("img"); content.setAttribute("src","images/loading.gif"); content.setAttribute("alt","loading...."); element.appendChild(content);} //拿到元素 清空內部 并添加一個imgfunction submitFormWithAjax(whichform,thetarget) { var request = getHTTPObject(); if(!request){return false ;} displayAjaxLoading(thetarget);//調用加載方法 var dataParts = []; var element; //提前創建要用的容器 for(var i=0 ; i<whichform.elements.length ; i++){  element = whichform.elements[i];  dataParts[i] = element.name + "=" +encodeURIComponent(element.value) //把元素的名字和值轉化成URL編碼放入容器中 } var data = dataParts.join("&"); //把數組轉化成一串字符串 每個項目之間用&連接 request.open("post",whichform.getAttribute("action"),true); //向表單目標地址準備提出名為post的請求 request.setRequestHeader("content-type","application/x-www-form-urlencoded");//設置頭部信息 //獲取請求后就會調用一下的 方法 算是一個觸發器 服務器會執行以下內容 request.onreadystatechange = function () {  if(request.readyState == 4){   if(request.status == 200 || request.status == 0){    var matches = request.responseText.match(/<article>([/s/S]+)<//article>/) //捕獲文本    if(matches.length>0){     thetarget.innerHTML = matches[1]; //正則表達式返回0為包含<article> 1為不包含的版本    }    else {     thetarget.innerHTML = "<p>sorry not find</p>";    }   }   else {    thetarget.innerHTML = "<p>" + request.statusText + "</p>";   }  } } request.send(data); //對目標服務器發送請求 return true;//代表函數執行完畢}

讓我們分步來查看具體做了什么事情

第一 獲取了一個請求對象

第二 調用display方法 讓頁面刪除article下的所有元素并放上load動畫

第三 創建URL編碼的請求 用數組存放 一項里面為name和被URL轉義的value 然后把他每項通過&連接 組成一個完整的字符串

第四 設置了請求的基本屬性 比如命名 目標地址 頭文件

第五 創建一個監聽程序 監聽請求 如果成功則把響應的html填入到目標article中
第六 正式發送請求 成功返回ture

以上所述是小編給大家介紹的JavaScript基礎 AJAX簡單的小demo ,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91成人亚洲 | 欧美亚洲啪啪 | 免费国产视频大全入口 | av在线等| 一级免费视频 | 日日摸夜夜骑 | 青草伊人网 | 狠狠操电影 | 欧美日韩国产成人在线观看 | 九九热在线视频观看 | 国产成人综合在线 | 色综av | 日本a大片| 久久免费视频精品 | 依依成人综合 | 日韩av有码在线 | 久久久久一区二区三区四区五区 | 久久久久一区二区三区四区五区 | 看片一区 | 久久日本| 欧美激情精品久久久久久黑人 | 亚洲免费毛片基地 | 毛片视频网站在线观看 | 亚洲精品一区二区三区在线看 | 久久艹综合 | 欧美一级片免费在线观看 | 日韩在线毛片 | 精品一区二区久久久久久按摩 | 黄色免费小视频网站 | 毛片在线免费观看完整版 | 久久99精品久久久久久秒播蜜臀 | 男女隐私免费视频 | 97中文字幕第一一一页 | 国外成人在线视频 | av成人免费观看 | 亚洲一区二区在线免费 | 成年性羞羞视频免费观看无限 | 日本大片在线播放 | 在线播放免费人成毛片乱码 | 欧美日韩爱爱视频 | 看国产毛片 |