Таблица не обновляется после удаления в asp.net mvc

0

Я удалил операцию в mvc 4, используя jquery. Если я нажму кнопку "Удалить", я просто установил Isactive = 0 для определенного столбца.

Jquery

 $('.btnDelete').live("click", function () {

            var didconfirm = confirm("Are you sure ?");
            debugger;
            if (didconfirm == true)
            {
                var emaildata = $(this).closest('td').siblings(':first-child').text();

                $.ajax({
                    type: "post",
                    url: "/Home/delete",
                    contentType: "application/json; chatset=utf-8",                    
                    //data: "{ 'EmailId' : '" + $(this).attr("data-member") + "'}",
                    data: "{ 'EmailId' : '" + emaildata + "'}",
                    confirm: "Need to delete this",
                    onSuccess: "deleteConfirmation",
                    success: function (data) {
                        alert("Record deleted Successfully");                        

                    }
                });
            }
        });

Код действия

 [HttpPost]
        public ActionResult delete(string EmailId)
        {
            var linq = (from db in userobject.UserTables
                        where EmailId==db.EmailId
                        select db).FirstOrDefault();
            if (linq.EmailId == EmailId)
            {
                linq.IsActive = false;
                UpdateModel(linq);
                userobject.SaveChanges();


            }

            return RedirectToAction("Home");
        }

Эта работа отлично работает, но моя страница показывает ту же запись, когда я нажимаю некоторые другие функции. Как удалить удаленные записи, когда я нажимаю кнопку "Удалить". Заранее спасибо.

  • 0
    jQuery live - устаревшая функция в последней версии jquery
  • 0
    @JobinJose, что если он не использует последнюю версию?
Теги:
asp.net-mvc-4

3 ответа

0

В вашей функции успеха удалите удаленный tr из таблицы (при условии, что у вас есть кнопка удаления в каждой строке таблицы):

     $('.btnDelete').live("click", function () {

        var $tr = $(this).closest('tr');
        ...

        $.ajax({
        ...
            success: function (data) {
                       $tr.remove();

                       alert("Record deleted Successfully");                        

      }
  • 0
    функция $ tr.remove не работает @ m1kael
  • 0
    @ dinesh.k - твои кнопки удаления внутри каждой строки? (внутри тд, в основном)
Показать ещё 2 комментария
0

попробуй это,

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

 $.ajax({
                    type: "post",
                    url: "/Home/delete",
                    contentType: "application/json; chatset=utf-8",                    
                    //data: "{ 'EmailId' : '" + $(this).attr("data-member") + "'}",
                    data: "{ 'EmailId' : '" + emaildata + "'}",
                    confirm: "Need to delete this",
                    onSuccess: "deleteConfirmation",
                    success: function (data) {
                        //when removed from DB.
                      $("#dynamic_row_id").remove();                     

                    }
                }); 
0

Вы можете найти родительский tr из объекта $ (this) (я предполагаю, что ваша кнопка находится в элементе td), а затем удалите его после успешного вызова.

$('.btnDelete').live("click", function () {

            var didconfirm = confirm("Are you sure ?");
            debugger;
            if (didconfirm == true)
            {
                var emaildata = $(this).closest('td').siblings(':first-child').text();
                var curRow = $(this).parent('tr');
                $.ajax({
                    type: "post",
                    url: "/Home/delete",
                    contentType: "application/json; chatset=utf-8",                    
                    //data: "{ 'EmailId' : '" + $(this).attr("data-member") + "'}",
                    data: "{ 'EmailId' : '" + emaildata + "'}",
                    confirm: "Need to delete this",
                    onSuccess: "deleteConfirmation",
                    success: function (data) {
                        alert("Record deleted Successfully");                        
                         curRow.remove();
                    }
                });
            }
        });

Ещё вопросы

Сообщество Overcoder
Наверх
Меню