Мой метод удаления Ajax выдает ошибку. Ссылка на объект не установлена ​​на экземпляр объекта. - PullRequest
0 голосов
/ 25 октября 2019

Я вызываю метод удаления контроллера из ajax по нажатию кнопки, но когда я нажимаю кнопку, выдается сообщение об ошибке типа «Ссылка на объект не установлена ​​для экземпляра объекта».

У меня есть код дляajax и вызов метода удаления ранее код javascript вызывался при каждой загрузке страницы, а не при нажатии кнопки, но затем я добавляю e.preventDefault ();Теперь проблема в том, что он выдает ошибку, а не переходит к методу удаления контроллера.

Мой код Javascript

 <script>
     function DeleteCall(id) {

           // $(document.getElementById("sbmtInput").click(function(e){}
            $('btnDelete').click(function (e) {

            e.preventDefault();
                $.ajax({
        type: "POST",
        url: '@Url.Action("Delete", "Student_Experience")',
        data: JSON.stringify({ id: id }), //use id here
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        success: function () {
                // alert("Data has been deleted.");
            location.reload();
            $(".demo1").html(result);
            },
        error: function () {
                alert("Error while deleting data");
            }
        });
    });
    </script>

Код моей кнопки <input type="submit" id="btnDelete" onclick="DeleteCall(@item.ID)" value="Delete" class="btn btn-sm btn-danger" /> Код моего контроллера

 [HttpGet]
        public ActionResult Delete(int? id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            Student_Experience student_Experience = db.Student_Experience.Find(id);
            if (student_Experience == null)
            {
                return HttpNotFound();
            }
           // Student_Experience student_Experience = db.Student_Experience.Find(id);
            db.Student_Experience.Remove(student_Experience);
            db.SaveChanges();
            return RedirectToAction("Create","Students");
           // return View(student_Experience);
        }

следует удалить выбранную строку

...