原生ajax()函式封裝程式碼例項
分享一段程式碼例項,它利用JavaScript實現了ajax()函式的封裝效果。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼/* 封裝ajax函式 * @param {string}opt.type http連線的方式,包括POST和GET兩種方式 * @param {string}opt.url 傳送請求的url * @param {boolean}opt.async 是否為非同步請求,true為非同步的,false為同步的 * @param {object}opt.data 傳送的引數,格式為物件型別 * @param {function}opt.success ajax傳送並接收成功呼叫的回撥函式 */ function ajax(opt) { opt = opt || {}; opt.method = opt.method.toUpperCase() || 'POST'; opt.url = opt.url || ''; opt.async = opt.async || true; opt.data = opt.data || null; opt.success = opt.success || function() {}; var xmlHttp = null; if (XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } else { xmlHttp = new ActiveXObject('Microsoft.XMLHTTP'); }; var params = []; for (var key in opt.data) { params.push(key + '=' + opt.data[key]); } var postData = params.join('&'); if (opt.method.toUpperCase() === 'POST') { xmlHttp.open(opt.method, opt.url, opt.async); xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=utf-8'); xmlHttp.send(postData); } else if (opt.method.toUpperCase() === 'GET') { xmlHttp.open(opt.method, opt.url + '?' + postData, opt.async); xmlHttp.send(null); } xmlHttp.onreadystatechange = function() { if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { opt.success(xmlHttp.responseText); } }; }
相關文章
- 原生javascript對ajax的封裝程式碼例項JavaScript封裝
- ajax原生js封裝JS封裝
- 原生js封裝AjaxJS封裝
- $.ajax()函式用法簡單例項函式單例
- hasOwnProperty()函式程式碼例項函式
- 原生Ajax封裝隨筆封裝
- javascript字串操作程式碼封裝程式碼例項JavaScript字串封裝
- 原生ajax處理json格式資料程式碼例項JSON
- 原生JS封裝AJAX請求JS封裝
- javascript獲取元素封裝程式碼例項JavaScript封裝
- js封裝 Ajax ——常用工具函式JS封裝函式
- jQuery css()函式使用程式碼例項jQueryCSS函式
- js冪函式程式碼例項分享JS函式
- js confirm()函式用法程式碼例項JS函式
- jquery的filter()函式用法程式碼例項jQueryFilter函式
- javascript函式節流程式碼例項分享JavaScript函式
- js函式作為函式的引數程式碼例項JS函式
- JavaScript封裝的id選擇器程式碼例項JavaScript封裝
- js ajax惰性載入程式碼例項JS
- jQuery ajax請求程式碼例項分享jQuery
- 原生js tab選項卡程式碼例項JS
- 用原生js進行封裝函式 實現 選項卡巢狀選項卡 功能JS封裝函式巢狀
- js物件導向封裝拖動效果程式碼例項JS物件封裝
- 使用ajax方式提交表單程式碼例項
- javascript以函式方式提交表單程式碼例項JavaScript函式
- js模擬實現replaceAll()函式程式碼例項JS函式
- javascript對url相關操作功能封裝程式碼例項JavaScript封裝
- 用原生js封裝一個ajax請求方法JS封裝
- ajax 封裝封裝
- jQuery函式的等價原生函式程式碼示例jQuery函式
- javascript原生封裝一個淡入淡出效果的函式JavaScript封裝函式
- jq封裝函式封裝函式
- php函式封裝PHP函式封裝
- 機器學習 - 似然函式:概念、應用與程式碼例項機器學習函式
- js批量註冊事件處理函式程式碼例項JS事件函式
- js自定義回撥函式簡單程式碼例項JS函式
- js給函式設定預設值程式碼例項JS函式
- js的建構函式和原型用法程式碼例項JS函式原型