//表单序列化function iSerialize(form){ var parts={}; for(var i=0;i<form.elements.length;i++){ var filed=form.elements[i]; switch(filed.type){ case undefined: case "submit": case "reset": case "file": case "button": break; case "radio": case "checkbox": if(!filed.selected) break; case "select-one": case "select-multiple": for(var j=0;j<filed.options.length;j++){ var option=filed.options[j]; if(option.selected){ var optValue=""; if(option.hasAttribute){ optValue=(option.hasAttribute("value")?option.value:option.text); }else{ optValue=(option.attributes("value").specified?option.value:option.text); } parts[filed.name]=optValue; } } break; default: parts[filed.name]=filed.value; } } return parts;} //封装ajaxfunction iAjax(obj) { var xhr = (function () { if (typeof XMLHttpRequest != ‘undefined‘) { return new XMLHttpRequest(); } else if (typeof ActiveXObject != ‘undefined‘) { var version = [ ‘MSXML2.XMLHttp.6.0‘, ‘MSXML2.XMLHttp.3.0‘, ‘MSXML2.XMLHttp‘ ]; for (var i = 0; version.length; i ++) { try { return new ActiveXObject(version[i]); } catch (e) { //跳过 } } } else { throw new Error(‘您的系统或浏览器不支持XHR对象!‘); } })(); obj.url = obj.url + ‘?rand=‘ + Math.random(); obj.data = (function (data) { var arr = []; for (var i in data) { arr.push(encodeURIComponent(i) + ‘=‘ + encodeURIComponent(data[i])); } return arr.join(‘&‘); })(obj.data); if (obj.method === ‘get‘) obj.url += obj.url.indexOf(‘?‘) == -1 ? ‘?‘ + obj.data : ‘&‘ + obj.data; if (obj.async === true) { xhr.onreadystatechange = function () { if (xhr.readyState == 4) { callback(); } }; } xhr.open(obj.method, obj.url, obj.async); if (obj.method === ‘post‘) { xhr.setRequestHeader(‘Content-Type‘, ‘application/x-www-form-urlencoded‘); xhr.send(obj.data); } else { xhr.send(null); } if (obj.async === false) { callback(); } function callback() { if (xhr.status == 200) { obj.success(xhr.responseText); //回调传递参数 } else { alert(‘获取数据错误!错误代号:‘ + xhr.status + ‘,错误信息:‘ + xhr.statusText); } }}
原文地址:https://www.cnblogs.com/wxiang/p/9083165.html
时间: 2024-11-08 13:59:32