使用Ajax发送表单包含文件输入不会继续该功能

问题描述

我有一个包含文件上传和其他一些输入的表单,我想用 JQuery 验证并提交它。

这是我的控制器:

 var added = await _unitOfWork.Repository<ProductCategory>().AddAsync(category);
    if (added == null) return View(categoryVm);
    await _unitOfWork.CommitAsync();
    return Json(new { success = true });

如果没有文件与“发布”或“Ajax”完美配合,我可以获得响应并显示成功或失败警报。 但是当最后保存到数据库后有一个文件时,我只会在我的视图中得到一个 json 结果作为文本,并且不会去函数显示结果警报。

这是结果图像:https://ibb.co/smrvjFN

脚本:

$("#createcatform").validate({
            rules: {
                CategoryName: {
                    required: true
                }
            },messages: {
                CategoryName: "وارد کردن نام گروه الزامی است",},submitHandler: function (form) {
        var post_url = $("#createcatform").attr("action"); //get form action url
        var form_data = $("#createcatform"); //Encode form elements for submission
        form_data.append('catimage',file);
        
        $.ajax({
            url: post_url,type: 'POST',processData: false,contentType: false,data: form_data,cache: false,success: function (form_data) {
                Swal.fire({
                    icon: 'success',title: 'Upload',text: 'successfully done',showConfirmButton: false,timer: 1500
                }).then((result) => {
                    location.reload();
                });
            }
        });

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)