如何在ajax调用后停止刷新页面(仅在保存图像时发生)?

时间:2019-03-29 06:15:49

标签: c# ajax asp.net-mvc

在控制器中保存图像后,ajax成功后,页面将自动重新加载。如果图像不可用,则没有问题。如何停止重新加载页面?

  • 方法

     if (desktopImageUpload != null)
      {
    
          var file = desktopImageUpload;
          var fileFormat = Path.GetFileName(file.ContentType);
          var fileName = "promo-" + fileID + "-desktop." + fileFormat;
    
          var path = Path.Combine(Server.MapPath("~/Images/SocialMediaPromotions"), fileName);
                file.SaveAs(path);               
    
       }
    
  • ajax

       $.ajax({
    
                type: 'POST',
                dataType: 'JSON',
                url: '/Admin/RecordSocialMediaPromotions',
                data: formData,
                contentType: false,
                processData: false,
                success: function (response) {
    
                    if (response.type == "Success") {
                        swal("Hooray", "Promotion Recorded Successfully", "success");
                        $('#preLoader').hide();
                        $("#dealSaveBtn").prop("disabled", true);
    
                    } else {
                        swal("Boooo", response.msg, "error");
                        $('#preLoader').hide();
                    }
                },
                error: function (response) {
                    swal("Boooo", "Promotion was not recorded", "error");
                    $('#preLoader').hide();
                }
    
          });
    

1 个答案:

答案 0 :(得分:0)

如果您的“按钮”是button元素,请确保您明确设置了type属性,否则WebForm将默认将其视为“提交”。

<button id="dealSaveBtn" type="button">Go</button>

如果它是input元素,请尝试以下操作:

    e.preventDefault();

了解更多:event.preventDefault()