2015-07-24 3 views
2

Мне нужно очистить предыдущие ответы. Он просто накапливается.Как удалить предыдущий ответ json?

Извините, у меня есть минимальные знания об ajax. Я ценю все ответы. Спасибо.

enter image description here

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("#form").submit(function(){ 
      var selector = $(this); 
      var form = selector.serializeArray(); 
      $("#submit").prop('disabled', true); 
      $.ajax({ 
       url:'{{ url('dashboard/add') }}', 
       type: 'post', 
       data: form, 
       dataType:"json", 
       success: function(data){ 
        if(!data.success) 
        { 
         $.each(data.errors, function(r, errors){ 
          var node = document.createElement("li"); 
          var textnode = document.createTextNode(errors); 
          node.appendChild(textnode); 
          document.getElementById("list").appendChild(node); 

         }); 

         $('#myModal').modal('hide'); 
         $('#myModal8').modal('show'); 
        } 
        else 
        { 
         $('#myModal').modal('hide'); 
         $('#myModal7').modal('show'); 
        } 
       } 
      }); 
      return false; 
     }); 
    }); 
</script> 
+2

Это не имеет ничего общего с 'ajax', тем более с' laravel' и очень предварительным отношением к 'json' и' response': это чисто о 'javascript' и' dom' ... – Amadan

+0

, Похож на ajax, который застрял у меня в голове. Я играл с ним почти 2 дня, поэтому я думал, что все связано с ним. Спасибо, что подняли головы. – Primecore

ответ

2

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

// ... 
$("#form").submit(function(){ 
    document.getElementById("list").innerHTML = ""; 
    // ... 
+0

Никогда не думал об этом. Спасибо ! – Primecore

1

Вы всегда добавляя к этому же списку HTML. Поскольку у вас уже есть jquery, вы можете использовать empty(), чтобы удалить список перед его добавлением.

$('#list').empty(); 

Помните, что это удалит все из списка, если вам нужно удалить определенные элементы, вы должны направить их идентификаторы или класс.

1

Вы можете проверить, присутствуют ли в списке, используя hasChildNodes() все дочерние узлы и если это true, вы можете использовать replaceChild() вместо appendChild().

Или вы можете очистить содержимое, используя innerHTML, перед добавлением чего-то нового.

Смежные вопросы