мой метод действия возвращает {"success = true, message =" work done "} ASP.net MVC 5 - PullRequest
0 голосов
/ 15 марта 2019

Вот мой метод создания действия.Я хочу получить предупреждение, когда успех верен.

public JsonResult Create(Student student ,HttpPostedFileBase img)
    {

        if (ModelState.IsValid)
        {
            if (img !=null)
            {
                var name = Path.GetFileNameWithoutExtension(img.FileName);
                var ext = Path.GetExtension(img.FileName);
                var filename = name + DateTime.Now.ToString("ddmmyyyff") + ext;
                img.SaveAs(Server.MapPath("~/img/"+filename));
                student.ImageName = filename;
                student.Path = "~/img/" + filename;
            }
            db.Students.Add(student);
            db.SaveChanges();
            return Json(new  { success = true, responseText = "The attached file is not supported." }, JsonRequestBehavior.AllowGet);


        }

        ViewBag.ClassID = new SelectList(db.Classes, "Id", "Name", student.ClassID);
        return new JsonResult { Data = new { success = false, message = "data not saved" } };

    }

Вот моя функция ajax:

    function onsub(form) {
    $.validations.unobtrusive.parse(form);
    if (form.valid()) {
        var ajaxConfig = {
            type: "POST",
            url: form.action,
            data: new FormData(form),

            success: function (response) {
                if (response.success ) {
                    alert(response.responseText);
                } else {
                    // DoSomethingElse()
                    alert(response.responseText);
                }
            }
        }
        if ($(form).attr("enctype") == "multipart/form-data") {
            ajaxConfig["contentType"] = false;
            ajaxConfig["processData"] = false;
        }
        $.ajax(ajaxConfig);
    }
    return false;
}

Как я могу получить предупреждение из формы без перезагрузки формы.Я также хочу представить изображения и другие файлы для создания метода действия.

Вот результат, который я получаю после отправки формы:

result i getting after submitting form

1 Ответ

0 голосов
/ 15 марта 2019

В вашем случае вы вызываете действие Создать, которое возвращает результат JSON, и тот же ответ Json отображается в браузере.

Это должна быть страница просмотра, откуда вы будете вызывать этот метод с помощью вызова Ajax., тогда вы сможете увидеть ваше предупреждение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...