| Код | <script type="text/javascript" src="ajax.js"></script>
<form method="post" id="whois-form"> <input type="text" id="domain" name="domain" /> <input type="button" onClick="whois();" value="Найти" /> </form> <img id="img_loading" src="loading.gif" style="display: none" /> <div id="whois_results"></div>
|
ajax.js
| Код |
function createXMLHttpRequest() { var request = false; // branch for native XMLHttpRequest object if (window.XMLHttpRequest) { try { request = new XMLHttpRequest(); } catch(e) { request = false; } } // branch for IE/Windows ActiveX version else if (window.ActiveXObject) { try { request = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { request = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) { request = false; } } } return request; }
//##################################################################################################
function callServer (method, url, data, dataType, handler, arg) { if (!method) method = 'GET'; var request = createXMLHttpRequest(); if (request == false) return true;
request.onreadystatechange = function() { if (request.readyState == 4) { handler (arg, request.responseText, request.responseXML, request.status, request.statusText); request = null; // чтобы не было утечки памяти в IE } }; request.open(method, url, true); if (data) { if (!dataType) dataType = 'application/xml'; isMozilla = (navigator.userAgent.match(/\bGecko\b/)); // in Mozilla XML always serialized as UTF-8 if ( (typeof(data) != "string") && (dataType.indexOf("charset=") < 0) && (isMozilla)) dataType = dataType + ';charset=utf-8'; request.setRequestHeader('Content-Type', dataType); } request.send(data); return false; }
//##################################################################################################
function whois (... данные формы ...) { document.getElementById ("img_loading").style.display = "inline"; callServer ("POST", <url скрипта>, <данные в формате var1=value1@var2=value2@...>, "", handler, arg); }
function handler (arg, responseText, responseXML, status, statusText) { document.getElementById ("img_loading").style.display = "none"; ... обработка резульатата с загрузкой данных в whois_results }
|
|