Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用ajax上传文件在上传后刷新_Java_Jquery_Ajax_File Upload - Fatal编程技术网

Java 使用ajax上传文件在上传后刷新

Java 使用ajax上传文件在上传后刷新,java,jquery,ajax,file-upload,Java,Jquery,Ajax,File Upload,我正在尝试使用ajax上传文件。上载功能正常,但由于某些原因,文件上载后页面会刷新。可能有个小问题我找不到,请帮我指出。也许这个问题很傻,但错误还是会发生 <form class="booking" id="addmovies" action="addmovies" method="post" enctype="multipart/form-data"> <table> <tr> <td>Movie Name</td&

我正在尝试使用ajax上传文件。上载功能正常,但由于某些原因,文件上载后页面会刷新。可能有个小问题我找不到,请帮我指出。也许这个问题很傻,但错误还是会发生

<form class="booking" id="addmovies" action="addmovies" method="post" enctype="multipart/form-data">
<table>
    <tr>
        <td>Movie Name</td>
        <td><input type="text" name="mname" id="mname"/><span class="error1" id="merror"></span></td>
    </tr>
    <tr>
        <td>Release Date</td>
        <td><input type="text" name="date" id="datepicker"/><span class="error1" id="dateerror"></td>
    </tr>
    <tr>
        <td>Choose poster</td>
        <td><input type="file" name="file" id="poster"/><span class="error1" id="perror"></td>
    </tr>
    <tr>
        <td colspan="2"><input type="submit" value="ADD MOVIES" class="button_example"/></td>
    </tr>
</table>
</form>

<script>
$("#addmovies").on("submit", function(e) {
    e.preventDefault();
    var mname = $("#mname").val();
    var date = $("#datepicker").val();
    var poster = $("#poster").val();

    if (mname == "") {
        $("#merror").html("please enter the movie name");
        return false;
    } else {
        $("#merror").hide();
    }
    if (date == "") {
        $("#dateerror").html("please enter the date ");
        return false;
    } else {
        $("#dateerror").hide();
    }
    if (poster == "") {
        $("#perror").html("please choose the poster ");
        return false;
    } else {
        $("#perror").hide();
    }
    var formData = new FormData($(this)[0]);
    $.ajax({
        url: $(this).attr("action"),
        type: 'POST',
        data: formData,
        async: false,
        beforeSend: function() {
            $("#message1").show().html("Uploading...");
        },
        success: function(data) {
            $("#message1").html(data).fadeOut(5000);
            $("#movielist").load("movies");
            $("#mname").val("");
            $("#datepicker").val("");
            $("#poster").val("");
        },
        cache: false,
        contentType: false,
        processData: false
    });
});

电影名称
发布日期
选择海报
$(“#添加电影”)。关于(“提交”,函数(e){
e、 预防默认值();
var mname=$(“#mname”).val();
var date=$(“#datepicker”).val();
var poster=$(“#poster”).val();
如果(mname==“”){
$(“#merror”).html(“请输入电影名称”);
返回false;
}否则{
$(“#merror”).hide();
}
如果(日期==“”){
$(“#dateerror”).html(“请输入日期”);
返回false;
}否则{
$(“#dateerror”).hide();
}
如果(海报==“”){
$(“#peror”).html(“请选择海报”);
返回false;
}否则{
$(“#peror”).hide();
}
var formData=新formData($(此)[0]);
$.ajax({
url:$(this.attr(“操作”),
键入:“POST”,
数据:formData,
async:false,
beforeSend:function(){
$(“#message1”).show().html(“上传…”);
},
成功:功能(数据){
$(“#message1”).html(数据).fadeOut(5000);
$(“#movielist”)。加载(“电影”);
$(“#mname”).val(“”);
$(“#日期选择器”).val(“”);
$(“#海报”).val(“”);
},
cache:false,
contentType:false,
processData:false
});
});

您需要
返回false
以防止页面刷新。或者您可以添加
event.preventDefault()在ajax调用之前

希望这有助于改变这种状况

$("#addmovies").on("submit", function(e) {
致:

或添加
返回false

$("#addmovies").on("submit", function(e) {
   //....
    $.ajax({
       //....
    });
    return false;
});

我已经有了event.preventDefault();让我尝试返回falselive已被弃用,on是bind、live和delegate的替代,off是unbind、die和undelegate的替代
$("#addmovies").on("submit", function(e) {
   //....
    $.ajax({
       //....
    });
    return false;
});