首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ajax表单提交集enctype

Ajax表单提交集enctype
EN

Stack Overflow用户
提问于 2013-07-29 23:05:22
回答 1查看 1.6K关注 0票数 2

我有以下Js/Ajax代码:

代码语言:javascript
复制
<script type="text/javascript">
$(document).ready(function(){
$("#message").hide();
$("#addsliderimage").submit(function(e){
    e.preventDefault();
    dataString=$("#addsliderimage").serialize();
    $.ajax({
        type: "POST",
        url: "addsliderimage_go.php",
        cache: false,
        data: dataString,
        success: function(res){
            //$("#message").show();
            $("#message").html(res);
            $('#message').fadeIn('slow');
            if(res.indexOf("success")!=-1)
            {
                window.location.href = res.substr(8);
            }
        }
    });
});
});
</script>

提交表单时,包含表单的页面不会更改页面只是将数据提交到ajax代码中的URL。

我知道这与im在其他表单上使用它一样有效,但是在这个特定的表单上,im上传图像/文件,所以我需要一种方法将enctype设置为multipart/ form -data。

EN

回答 1

Stack Overflow用户

发布于 2013-07-30 00:41:49

如果你想使用AJAX上传文件,你应该使用众所周知的"hack",这是一个简单的iframe,带有一个简单的表单,不是由AJAX提交的,并捕捉那个iframe的load事件,这样你就可以得到上传的结果。

对于你有疑问的部分,嗯,因为当"presubmit“(以某种方式命名)函数结束时,你阻止了默认事件,没有发生任何事情(你知道,提交后默认事件返回"true”),所以你需要在传递给提交函数的闭包之前告诉它需要提交,但你必须处理它是否被提交了两次。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17927541

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档