2011-04-12 53 views
0

鑑於所有文件(html文件,文本文件等)都在網絡上, 有沒有什麼方法可以讀取文本文件並使用ActiveX旁邊的textarea打印它們?除了使用ActiveX之外,有沒有什麼方法可以在javascript中讀取文本文件?

我已經試過這樣的,但它沒有達到的目標:

 
function getSelectedItem(){ 
    var client = new XMLHttpRequest(); 

    if(document.codeForm.dropList.value == "foo") 
     client.open('GET', 'foo.txt'); 
    else if(document.codeForm.dropList.value == "bar") 
     client.open('GET', 'bar.txt'); 
    client.onreadystatechange = function() { 
     //This actually displays the message in the file 
     alert(client.responseText); 

     //But this doesn't. This just displays "undefined" 
// document.codeForm.source.value = client.reponseText; 
    } 
    client.send(); 
} 

因爲我實際上可以顯示與文件上下文警報消息,我相信會有一些方法來做到這一點。 (實際上文件的內容似乎進入「client.reponseText」, ,但它的數據類型是DOMstring,不只是字符串。)

任何意見將不勝感激。 謝謝。

回答

1

使用jQuery。 http://api.jquery.com/jQuery.get/

$.get("http://www.whatever.com/foo.txt", null, function(response){ 
    $("#theTextArea").val(response); // where theTextArea is the ID of the textarea you want to put the data into. 
}); 
+0

這完美的作品!謝謝! – devEvan 2011-04-13 04:33:06

+0

@Mike Ruhlin-wat如果txt和html文件都存在於系統本地 – Varun 2011-09-29 06:51:28

0

試試這個,而不是

document.codeForm.source.innerValue = client.reponseText; 

document.getElementById("source").innerHtml = client.responseText; 

document.getElementById("source").innerText = client.responseText; 

您的textarea需要一個id屬性,使用後兩種方法

+0

我剛剛嘗試過,但它並沒有給textarea帶來任何改變。 – devEvan 2011-04-12 12:28:24

+0

我剛更新它添加其他方式來設置文本區 – 2011-04-12 20:58:59

+0

他們仍然領導「未定義」。無論如何,我使用jQuery修復了這個問題。謝謝。 – devEvan 2011-04-13 04:34:40

相關問題