Нашел на сайте (http://netfaq.ru/ajax/ajax_post_request) скрипт и добавил некие возможности.
CODE (javascript):
скопировать код в буфер обмена
скопировать код в буфер обмена
- function createXMLHttp(){
- if(typeof XMLHttpRequest != "undefined"){ // для браузеров аля Mozilla
- return new XMLHttpRequest();
- } else if(window.ActiveXObject){ // для Internet Explorer (all versions)
- var aVersions = ["MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0",
- "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp",
- "Microsoft.XMLHttp"];
- for (var i = 0; i < aVersions.length; i++) {
- try {
- var oXmlHttp = new ActiveXObject(aVersions[i]);
- return oXmlHttp;
- }
- catch (oError) {}
- }
- throw new Error("Невозможно создать объект XMLHttp.");
- }
- }
- function getRequestBody(oForm) {
- var aParams = new Array();
- for(var i = 0; i < oForm.elements.length; i++) {
- var sParam='';
- if(oForm.elements[i].type=='radio'){
- if(oForm.elements[i].checked){
- sParam += encodeURIComponent(oForm.elements[i].name)
- sParam += "=";
- sParam += encodeURIComponent(oForm.elements[i].value);}
- }else if(oForm.elements[i].type=='checkbox'){
- sParam += encodeURIComponent(oForm.elements[i].name)
- sParam += "=";
- if(oForm.elements[i].checked){
- sParam += encodeURIComponent(oForm.elements[i].value);
- }else{
- sParam +='no';
- }
- }else{
- sParam += encodeURIComponent(oForm.elements[i].name);
- sParam += "=";
- sParam += encodeURIComponent(oForm.elements[i].value);
- }
- aParams.push(sParam);
- }
- return aParams.join("&");
- }
- function sendRequest(oForm,res) {
- var oForm = document.getElementById(oForm);
- var sBody = getRequestBody(oForm);
- var oXmlHttp = createXMLHttp();
- oXmlHttp.open("POST",oForm.action, true);
- oXmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
- oXmlHttp.setRequestHeader("Content-length", sBody.length);
- oXmlHttp.setRequestHeader("Connection", "close");
- oXmlHttp.onreadystatechange = function() {
- if(oXmlHttp.readyState == 4) {
- if(oXmlHttp.status == 200) {
- saveResult(oXmlHttp.responseText,res);
- } else {
- saveResult("Ошибка: " + oXmlHttp.statusText);
- oXmlHttp.abort();
- }
- }
- };
- oXmlHttp.send(sBody);
- }
- function saveResult(sText,res) {
- var sElem = document.getElementById(res);
- sElem.innerHTML = sText;
- }