Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ajax problem z dublowaniem zmiennej.
Forum PHP.pl > Forum > XML, AJAX
Grafnastyk
Witam, pracuje na frameworku Codeigniter. Posiadam listę użytkowników, którą generuje foreachem w php

  1. <?= form_open('', array('id' => $val['id'] )); ?>
  2. <input type="submit" class="btn <?= ($val['active'] == 0)? 'btn-danger' : 'btn-success'; ?>" onclick="ajaxReq(<?= $val['id'] ?>);" value="<?= $this->main->active()[$val['active']]; ?>">
  3. <input type="hidden" name="active" value="<?= $this->main->active()[$val['active']]; ?>"/>
  4. <input type="hidden" name="id" value="<?= $val['id']; ?>">
  5. <?= form_close(); ?>


Na podstawie onclicka odwołuję się do ajaxa w zależności od danego

  1. function ajaxReq(id) {
  2. $(document).on('submit', id, function(event){
  3. console.log(id);
  4. event.preventDefault();
  5. $.ajax({
  6. url: "changeActive",
  7. method: "post",
  8. data: $('#' + id).serialize(),
  9. async: true,
  10. success: function (msg) {
  11. if(msg !== false){
  12. id = undefined;
  13. success('Uprawnienia zmienione');
  14. $('#table').load(' #table');
  15. } else {
  16. failed('Wystąpił błąd');
  17. }
  18. }
  19. });
  20. });
  21. }


Pierwszy czy drugi ajax działa dobrze, ale po każdym kolejnym dubluje mi się pole undefined i przy 15-20 ajaxie strona po prostu się zawiesza :/ Nie mam już pomysłu jak to rozgryźć. Czy byłby ktoś w stanie podsunąć jakąś wskazówkę ? Z góry dziękuję za pomoc.
LowiczakPL
Taka mała wskazówka, jeśli robisz wysyłanie formularza przez AJAX to nie rób inputa ani buttona typu SUBMIT

zrób sobie button type button
aras785
nie wiem czy o to chodzi ale spróbuj:

  1. $(document).off('submit').on('submit', id, function(event){


i daj znać smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.