2010-02-03 23 views

Trả lời

2

Có cách nào khác để tôi có thể kiểm tra kích thước tệp trước khi tải lên không?

Không có trong JavaScript, kích thước tệp là not in the DOM.

1

khi instantiating SWFUpload, có hai tham số mà bạn cần phải vượt qua: FILE_SIZE_LIMIT, và file_queue_error_handler:

new SWFUpload({ 
    file_size_limit: "10 MB", 
    file_queue_error_handler: queueErrorHandler, 
    [...] 
}) 

và sau đó:

function queueErrorHandler(file, errorCode) { 
    if (errorCode == SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT) { 
     alert("File exceeds the 10MB limit!"); 
    } 
} 

kiểm tra này nếu kích thước tập tin là nằm trong giới hạn trước khi bắt đầu tải lên

+2

Tôi chỉ không muốn tải tệp lên bằng Flash. Ý tôi là, tôi chỉ muốn kiểm tra kích thước của tệp bằng cách sử dụng SWFUpload và sau đó tải tệp lên bằng quy trình bình thường. Nó có vẻ như có thể? – jean27

+0

Tôi cũng phát hiện ra rằng tôi không thể thao tác giá trị của tập tin kiểu đầu vào vì vậy tôi đoán những gì tôi thực sự muốn là không thể. – jean27

+0

có, bằng cách sử dụng SWFUpload chỉ để kiểm tra kích thước tệp sẽ hoạt động nếu bạn có thể đặt thuộc tính giá trị của đầu vào tệp bình thường –

1

Kiểm tra kích thước tập tin thông qua sự kiểm soát SWFUpload là có thể. Chỉ cần đặt điều khiển SWFUpload bên ngoài các thẻ biểu mẫu Web. Cho người dùng nhấp vào nút Tải lên SWF và trỏ tới tệp tải lên của anh ấy. Sử dụng javascript để xác định kích thước tệp, sau đó sử dụng thông tin này khi bạn thấy phù hợp chẳng hạn như điền một hàm xác thực. Sau đó, biểu mẫu chính của bạn sẽ cần phải yêu cầu người dùng trỏ đến tệp tải lên của họ một lần nữa và đó là trường này sẽ thực hiện việc tải lên tệp thực tế. Khi biểu mẫu được gửi, điều khiển SWFUpload sẽ bị bỏ qua hoàn toàn vì nó không phải là một phần của biểu mẫu chính.

+0

bạn có thể đưa ra một ví dụ không? tôi cũng muốn chỉ các tập tin và không có gì khác, tôi có thanh tiến trình của riêng tôi và cách riêng của tôi tải lên một tập tin vào máy chủ của tôi. Về cơ bản tôi chỉ muốn lấy kích thước tập tin mà IE không thể cho tôi được nêu ra. cám ơn? – PathOfNeo

+0

Tôi nghĩ rằng nó được ngụ ý trong câu hỏi của OP rằng người dùng không cần phải duyệt/chọn tệp hai lần. –

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