jQuery ajax post文件字段

时间:2011-04-19 15:31:28

标签: jquery ajax

我有一个带文件输入的表单。如何获取文件并使用jQuery将其发布到php脚本?我可以使用.val()来获取值然后发布吗?例如,假设文件输入的id为file,我可以这样做:

$('#submit').click(function() {
    var file = $('#file').val();
    $.post('script.php', { "file": file }, function(data) {
        // do something here after post complete
    }, 'json');
});

由于

4 个答案:

答案 0 :(得分:12)

这应该有所帮助。 How can I upload files asynchronously?

正如帖子建议我推荐一个位于此处的插件http://malsup.com/jquery/form/#code-samples

答案 1 :(得分:9)

我尝试使用Ajax接受文件,然后使用我的php文件获取存储文件。代码修改略有工作。 (上传的文件:PDF,JPG)

\b(I|me)\b

只需打印文件详细信息并进行检查即可。你会得到输出。如果错误让我知道。

答案 2 :(得分:2)

文件上传可以以这种方式完成,无论你如何分解它。如果您想进行ajax / async上传,我建议您查看类似UploadifyValums

的内容

答案 3 :(得分:-3)

试试这个......

<script type="text/javascript">
      $("#form_oferta").submit(function(event) 
      {
           var myData = $( form ).serialize(); 
           $.ajax({
                type: "POST", 
                contentType:attr( "enctype", "multipart/form-data" ),
                url: " URL Goes Here ",  
                data: myData,  
                success: function( data )  
                {
                     alert( data );
                }
           });
           return false;  
      });
</script>

此处contentType被指定为multipart/form-data,就像我们在表单标记中所做的那样,这将用于上传简单文件 在服务器端,您只需要编写简单的文件上载代码来处理此请求,并使用您希望作为响应向用户显示的回显消息。