php - Ajax 上传图片

标签 php jquery html ajax

Q.1 我想将此表单转换为 ajax,但我的 ajax 代码似乎缺少一些东西。 提交时根本不做任何事情。

第二季度。我还希望在选择文件不等待提交时触发更改。

这里是 JS。

$('#imageUploadForm').on('submit',(function(e) {
    e.preventDefault()
    $.ajax({
        type:'POST',
        url: $(this).attr('action'),
        data:$(this).serialize(),
        cache:false
    });
}));

以及带有 php 的 HTML。

<form name="photo" id="imageUploadForm" enctype="multipart/form-data" action="<?php echo $_SERVER["PHP_SELF"];?>" method="post">
    <input type="file" style="widows:0; height:0" id="ImageBrowse" hidden="hidden" name="image" size="30"/>
    <input type="submit" name="upload" value="Upload" />
    <img width="100" style="border:#000; z-index:1;position: relative; border-width:2px; float:left" height="100px" src="<?php echo $upload_path.$large_image_name.$_SESSION['user_file_ext'];?>" id="thumbnail"/>
</form>

最佳答案

首先在你的 ajax 调用中包含成功和错误函数,然后检查它是否给你错误或什么?

你的代码应该是这样的

$(document).ready(function (e) {
    $('#imageUploadForm').on('submit',(function(e) {
        e.preventDefault();
        var formData = new FormData(this);

        $.ajax({
            type:'POST',
            url: $(this).attr('action'),
            data:formData,
            cache:false,
            contentType: false,
            processData: false,
            success:function(data){
                console.log("success");
                console.log(data);
            },
            error: function(data){
                console.log("error");
                console.log(data);
            }
        });
    }));

    $("#ImageBrowse").on("change", function() {
        $("#imageUploadForm").submit();
    });
});

关于php - Ajax 上传图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19447435/

相关文章:

html - 其他元素问题下的 Internet Explorer 7 菜单下拉

php - 谷歌如何自动加载页面底部的页脚?

java - 如何在我的 PHP 和 Java/Play Framework 应用程序之间共享一个 Apache 实例?

javascript - 使用 jquery/javascript 从 dom 中删除/(斜杠)

javascript - 更改后如何获取textarea的textContent?

c# - 将 Controller 的结果显示到 asp.net mvc c# 中的 View

jQuery 将悬停功能转换为点击功能 - 切换?

php - 获取一列中的数据

php - 合并三个表之间的数据

html - CSS/HTML 下拉菜单在 Chrome、Edge 而非 Safari 上显示在左侧而不是在父级下方