2011-11-15 39 views
6

Tôi mới sử dụng javascript và cố gắng mở một tệp txt vào var và sau đó tiêm nó vào div html ... Tôi đã cố gắng sử dụng fopen nhưng tôi đã không thành công.đọc tập tin txt qua javascript của khách hàng

<script type="text/javascript"> 
file = fopen(getScriptPath("info.txt"), 0); 


file_length = flength(file); 
var content = fread(file,file_length); 
var div = document.getElementById("myDiv"); 
//alert(div); 
div.innerHTML = ""; 
div.innerHTML = content; 
</script> 
+1

JavaScript này có được chạy trong trình duyệt không? –

+0

Điều gì khiến bạn nghĩ rằng JavaScript có fopen? Tệp văn bản này ở đâu? Bạn có nghĩa là một tài nguyên văn bản/đồng bằng HTTP tại URL 'info.txt' (liên quan đến vị trí của tài liệu) không? – Quentin

+0

Bạn cố gắng kết hợp PHP và JavaScript một cách không phù hợp. Tìm hiểu để khác nhau giữa hai đầu tiên, sau đó bạn có thể đi vào lập trình. – HerrSerker

Trả lời

2

bỏ câu hỏi:

if (window.XMLHttpRequest) 
{// code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
} 
else 
{// code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
} 
xmlhttp.open("GET","YOUR_FILE.txt",false); 
xmlhttp.send(); 
xmlDoc=xmlhttp.responseText; 

bởi Freek8

+0

Không có dấu hiệu nào của ASP trong câu hỏi. Có mặc dù DOM, cho thấy phía khách hàng JS. – Quentin

5

Vì lý do bảo mật, Javascript được tạo để bạn không thể thực hiện việc này. Tuy nhiên, một người đã thực hiện giải pháp thay thế có thể hoạt động và đăng nó here.

Ok, tôi nhận ra, nó chỉ hoạt động cho các tệp được truy cập công khai trên máy chủ, mà tôi tin rằng không phải là những gì bạn muốn làm. Tuy nhiên, nếu bạn tìm thấy một cách, nó sẽ là một hack như thế này, nhưng nó cũng có thể được cố định để không làm việc bất cứ lúc nào.

+0

Điều đó đúng với javascript phía máy khách. Bạn hoàn toàn có thể đọc các tập tin trên javascript phía máy chủ. Ví dụ: node.js. –

+0

Tôi tìm thấy liên kết này giải thích cách thực hiện ... http://www.ehow.com/how_5996745_read-file-html-script-javascript.html NHƯNG nó không hoạt động – Elad

+1

Trang đó phần lớn là rác. – Quentin

9

Mặc dù nó nói xml yêu cầu này hoạt động hoàn toàn tốt cho các tệp txt quá (máy chủ và phía máy khách).

if (window.XMLHttpRequest) 
{// code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
} 
else 
{// code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
} 
xmlhttp.open("GET","YOUR_FILE.txt",false); 
xmlhttp.send(); 
xmlDoc=xmlhttp.responseText; 
+0

Nó hoạt động, Cảm ơn bạn! – Elad

+0

Rất đẹp. Vui lòng đặt câu trả lời này là câu trả lời được chấp nhận nếu câu trả lời hữu ích. – Freek8

+1

@ Freek8: Cảm giác chung cho thấy rằng bạn không thể sử dụng 'XMLHttpRequest' để đọc tệp từ máy khách. – Dennis

8

JavaScript chưa có các chức năng bạn đang cố gắng để sử dụng.

Để đọc tệp trên máy chủ bằng JavaScript, bạn có thể sử dụng XMLHttpRequest.

Không có cách nào dễ dàng để đọc tệp trên máy khách.

+0

Cảm ơn tất cả, Đó là một trong những câu trả lời nhanh nhất tôi nhận được :) – Elad

Các vấn đề liên quan