2013-08-08 32 views
6
$.post('image.php', { 
    image:form.image.value 
} 


<form id="form" enctype="multipart/form-data"> 
<input type="file" id="image" name="image"/> 

PHP->isset($_FILES['file'])Làm thế nào để sử dụng phương pháp bài JQuery

Làm thế nào để sử dụng $.post() để gửi $_FILES bên trong thẻ form?
Tôi vẫn cần bao gồm enctype hoặc tôi có cần sử dụng AJAX không và làm cách nào để thực hiện điều đó?

+0

xin lỗi, nó không thể - lý do an toàn – picios

+1

@picios Đó không phải là không thể, nữa. Tuy nhiên, được giới hạn trong [trình duyệt hiện đại] (http://caniuse.com/#feat=fileapi). –

+0

@ Jonathan Lonowski có, nhưng nếu bạn là nhà phát triển, bạn không muốn làm những việc như vậy – picios

Trả lời

4

Sử dụng jQuery dạng plugin để AJAX gửi biểu mẫu với các tập tin. http://malsup.com/jquery/form/

Trong JS

$('#form').ajaxSubmit({ 
success: function(response) { 
    console.log(response); 
} 
}); 

trong PHP

// after doing upload work etc 

header('Content-type: text/json'); 
echo json_encode(['message' => 'Some message or param whatever']); 
die(); 

tài liệu đầy đủ và các ví dụ: http://malsup.com/jquery/form/#ajaxSubmit

+0

nếu tôi sử dụng plug in, làm thế nào để đăng tin nhắn trở lại từ php? – Ben

+0

Nó được coi là một cuộc gọi AJAX bình thường - Tôi sẽ chỉnh sửa câu trả lời để chỉ cho bạn cách –

+0

thx rất nhiều! hãy để tôi thử nó – Ben

0

Chỉ cần submit biểu mẫu!

$('form#form').submit(); 

Đối với AJAX Tải lên đọc this answer

+0

anh ấy đang nói về bài ajax – picios

+0

Có thể sau khi thay đổi câu hỏi của anh ấy. Cảm ơn bạn đã downvote. –

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