2011-02-15 11 views
2

私は1つのWebページから私のサーバにいくつかのXMLを投稿/送信する必要があります。どうすればこのことができますか?純粋なJavascriptのデータ投稿

そして、はい、私は純粋なJavascriptだけでこれを行う必要があります。

提案がありますか?

+0

あなたはこれを行うためにAJAXを使うことができます。 – Adeel

+5

彼らはあなたの人生を楽にしますが、あなたのページを過負荷にして、全体の読み込み時間を増やします。あなたのプロジェクトがそれに大きく依存しない限り、JQueryの使用はお勧めしません。 –

+0

タグ 'life_before_sarissa'を追加できますか? –

答えて

2

例えば

var xhr = getXMLHttpRequest(); 

function getXMLHttpRequest() { 
    var activeXVersions = ["Msxml2.DOMDocument.6.0","Msxml2.DOMDocument.3.0","Msxml2.XMLHTTP","Microsoft.XMLHTTP"]; 

    try { 
     return new XMLHttpRequest; 
    } catch (e) { 
     for (var i=0; i < activeXVersions.length; i++) { 
      try { 
       return new ActiveXObject(activeXVersions[i]); 
      } catch (e) {} 
     } 
    } 
    return null; 
} 

function callAjax(url) { 
    xhr.open(“POST”, url, true); 
    var xmlContents = document.getElementById(‘xml′).value; // xml contents 

    xhr.onreadystatechange = handleAjaxResponse; 
    xhr.setRequestHeader(“Content-type”, “application/x-www-form-urlencoded”); 
    xhr.send (‘xml=’ + xmlContents ); 
} 

function handleAjaxResponse() { 
    if (xhr.readyState == 4) { 
     if (xhr.status == 200) { 
      alert(xhr.responseXML); 
     } else { 
      alert (‘An error occurred: ‘ + myRequest.statusText); 
     } 
    } 
} 
+0

ありがとう!これが1つです! –

1

これは2通りあります。

  1. 使用XHR

  2. はiframe

を使用して最初のオプションは、近代的な方法、および好ましい方法は、これらの日です。

私の提案は、$.postを使用してこれを些細な問題にするjQueryのようなライブラリを使用することです。ここで

0

は、私はAJAX link

を学習するための優れたチュートリアルであると信じるものです(注:AJAXは非同期JavaScriptとXMLを意味し、純粋なJavascriptのです)

関連する問題