2009-06-06 4 views
0

私はXHRコールで日付を取得していますが、ページに渡すことはできません。私はちょうどdocument.write経由で挿入される変数にXHR呼び出しから日付を渡す必要があります。ここでEasy JS変数渡しの問題

は私のコードです:

var upDated 

function getUpdated(){ 

xmlhttp.open("HEAD", "MBP_box.JPG",true); 
xmlhttp.onreadystatechange=function() { 
    if (xmlhttp.readyState==4) { 
    upDated = xmlhttp.getResponseHeader("Last-Modified"); 
    alert(upDated); 
    } 
} 
xmlhttp.send(null) 
} 

、体内の....

document.write(upDated); 
+0

XHR通話でどのようにその日付を取得しますか? –

+0

上記のように応答ヘッダーを取得できます。 httpヘッダーの一覧については、http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.htmlを参照してください。 –

+0

これはより整理されたリファレンスです。http://en.wikipedia.org/wiki/List_of_HTTP_headers –

答えて

3

代わりの警告(更新します);アイデアは非常に単純です、あなたはそれが(それが呼び出されると呼ばれる見当がつかないとして、あなたはコールバック関数(onreadystatechangeにするために割り当てられた1)内部のロジックを維持する必要があります

document.getElementById("some-element").innerHTML = upDated; 

:あなたのような何かを持っている必要がありますブラウザがサーバから何らかの応答を受信したときには、これはまったく起こりません)。したがって、この接続を設定した後でコードを取得することはできません。

+0

dammit。はい、もちろん。 imは古いものと新しいものが混在しています。 (私のJSは非常にスケッチです..) これは今完璧な意味があります。 :) –

+0

働いています。 多くのありがとう:) http://swind.co.uk/_bin/TEST/XHR_TEST –

0

私はあなたが望むものを理解していません - あなたは、Ajax呼び出しで返されたupDatedの値をdocument.write経由でドキュメント本文に挿入したいと思っていますか?

もしそうなら、間違いなくこれを行うことはできません。 document.writeが発生するとすぐに実行されます。これは、ドキュメントのロード中です。値を動的に注入する場合は、DOMメソッドを使用する必要があります。

+0

またはlinnerのように.innerHTMLを使用しました。 (innerHTMLはDOM標準の一部ではないことに注意してください) –

+0

"私はあなたが望むものを理解していません - あなたは、Ajax呼び出しで返されたupDatedの値を、 document.write? " はい、そうです。 私はそれを得たと思う。 - その私の愚かな古いJSの脳.. :) 代わりにDOMの挿入を使用する必要があります。 –