2009-11-26 21 views

Trả lời

31

Thử value tài sản, như thế này:

var fu1 = document.getElementById("FileUpload1"); 
alert("You selected " + fu1.value); 

LƯU Ý : Có vẻ như FileUpload1 là một điều khiển FileUpload phía máy chủ ASP.Net.
Nếu vậy, bạn sẽ nhận được ID của nó bằng cách sử dụng ClientID tài sản, như thế này:

var fu1 = document.getElementById("<%= FileUpload1.ClientID %>"); 
+5

15 giây, tốt Công việc X-) –

1

Hãy thử

var fu1 = document.getElementById("FileUpload1").value; 
2

Hãy thử document.getElementById("FileUpload1").value giá trị này nên có một con đường cho một tập tin được tải lên, chỉ cần dải tất cả các thư mục từ giá trị đó và bạn sẽ có tên tệp.

1

RaYell, Bạn không cần phải phân tích cú pháp giá trị được trả lại. document.getElementById("FileUpload1").value chỉ trả lại tên tệp có phần mở rộng. Điều này rất hữu ích đối với tôi vì tôi muốn sao chép tên của tệp được tải lên hộp đầu vào có tên 'tiêu đề'. Trong ứng dụng của tôi, tệp được tải lên được đổi tên thành chỉ mục được tạo bởi cơ sở dữ liệu phụ trợ và tiêu đề được lưu trữ trong cơ sở dữ liệu.

23

Trong phần tử google chrome.value trả về tên + đường dẫn, nhưng đường dẫn giả. Như vậy, đối với trường hợp của tôi, tôi sử dụng các thuộc tính tên vào file như dưới đây:

function getFileData(myFile){ 
    var file = myFile.files[0]; 
    var filename = file.name; 
} 

đây là cuộc gọi từ trang:

<input id="ph1" name="photo" type="file" class="jq_req" onchange="getFileData(this);"/> 
+0

Lưu ý cho người khác: đối với IE11, điều này không trả lại bất cứ điều gì cho tôi. – Cordell

+0

Nó hoạt động tốt cho tôi trong IE11 –

1

Sử dụng mã như thế này trong một hình thức tôi có thể nắm bắt được bản gốc tên tệp tải lên nguồn, sao chép nó vào trường nhập đơn giản thứ hai. Điều này là để người dùng có thể cung cấp tên tệp tải lên thay thế trong yêu cầu gửi vì tên tệp tải lên tệp là không thay đổi.

<input type="file" id="imgup1" name="imagefile"> 
     onchange="document.getElementsByName('imgfn1')[0].value = document.getElementById('imgup1').value;"> 
    <input type="text" name="imgfn1" value=""> 
+1

Trong khi đoạn mã này có thể giải quyết được câu hỏi, [bao gồm cả giải thích] (http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers) thực sự hữu ích để cải thiện chất lượng bài đăng của bạn. Hãy nhớ rằng bạn đang trả lời câu hỏi cho người đọc trong tương lai và những người đó có thể không biết lý do cho đề xuất mã của bạn. – Ferrybig

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