更改已保存为许多项目-关闭模态后清除数据

时间:2019-06-15 16:27:27

标签: jquery ajax twitter-bootstrap

我使用模态对主题进行编辑。在以下情况下:反复按下模式开关启用按钮并不做任何更改就将其关闭,对多个项目进行重复操作-这导致以下事实:更改而不是我添加更改的一个项目,而是将更改保存到数据库中。标记的。 我认为可以通过以某种方式清除href中的data-id内存来打开模式来解决此问题

result

<a href="" data-toggle="modal" data-target="#editSubject" data-id="{{$subject->id}}" 
data-name="{{$subject->name}}" data-ects="{{$subject->ects}}" 
data-exam="{{$subject->exam}}" 
class="btn btn-light btn-sm edit-subject">
<i class="far fa-edit fa-lg"></i>
</a>






var editSubject = () => 
{
    $('body').on('click', '.edit-subject', function(){
        let el = this;
        let id = $(this).data('id');

        $("#nameEdit").attr("value",  $(this).data('name'));
        $("#ectsEdit").attr("value",  $(this).data('ects'));
        $("#examEdit").attr("value",  $(this).data('exam'));

        $('#submitEditSubject').click(function(event){

            let name = $('#nameEdit').val();
            let ects = parseInt($('#ectsEdit').val());
            let exam = $('#examEdit').val();

                let postData = {
                    "name": name,
                    "ects": ects,
                    "exam": exam,
                    "_token": $('#token').val()
                };


                $.ajax({
                    type: "PATCH",
                    url: `/subjects/${id}/update`,
                    data: postData,
                    success: function(data)
                    {
                        closeModal();
                        $('#validation-info').hide();
                        $(el).closest('tr').remove();
                        appendToTable(data);
                        $('#success-info').show();
                        $('#info').html(data.success);
                    }
                });
        });


    });

}

0 个答案:

没有答案