Witam, napisałem sobie kawałek kodu, który odpowiada za dodawanie kategorii. Wszystko działa bardzo dobrze, dopóki nie deklaruje funkcji (w jQuery), która po dodaniu nowej kategorii, wywołuje metodę kontrolera, która pobiera zawartość jako widok, a następnie aktualizuje cały div z kategoriami na podstronie.

Wersja bez zaktualizowania (bez odświeżania) zawartości po dodaniu nowej kategorii.

  • Użytkownik klika "Dodaj kategorię" -> pokazuje się okno modalne, do którego wczytywane jest zawartość widoku, wywołanego przez kontroler ContactAddController->addCategoryAction() (ajaxowe wywołanie) - formularz dodania kategorii,

  • po dodaniu nowej kategorii (jeżeli formularz przejdzie walidację), wyświetlany jest komunikat, użytkownik może od razu dodać nową kategorię, lub zamknąć okno modalne, i jeżeli chce otworzyć jeszcze raz i dodać kolejną kategorię (zawiłe trochę ale to bardzo ważne)

  • lista kategorii nie akutalizuje się - wymagane przeładowanie strony

  • cały proces przebiega prawidłowo, użytkownik może dodawać ile kategorii chce, zamykać oraz otwierać ponownie okno modalne,

Wersja z zaktualizowaniem listy kategorii, (bez odświeżania, ajaxowe pobranie zawartości oraz podmiana diva), od razu po dodaniu nowej kategorii.

  • pkt.1 j.w
  • pkt.2 j.w LECZ - jeżeli użytkownik zamknie okno modalne, i zechce je otworzyć ponownie, to albo się nie wyświetli prawidłowo, albo po wpisaniu danych do formularza i kliknięciu submit, formularz zwraca błędy, jakoby był wysłany pusty,
  • lista kategorii odświeża się po zapytaniu ajax,

Wykluczam, wadliwe działanie, kontrolera, problem jest ewidentnie z funkcją w jQuery.

Kiedy użytkownik znajduje się na podstronie do dodawania kategorii poprzez aktualny adres (/admin/contact/list) wywoływany jest kontroler zwracający widok, z listą kategorii. Takie samo wywołanie jest dla ajaxowego odświeżenia listy kategorii. Czyli de facto wysyłane jest zapytanie do zwrócenie dokładnie tego samego widoku, który jest teraz załadowany, ale ze zmienionymi danymi.

Poniżej kod

function reloadContent(){
        $.get( "/admin/contact/list", function( data ) {
            $( ".contact-list" ).html( data );
        });
    } 

Po usunięciu tej funkcji, wszystko działa jak należy, aczkolwiek wiadomo, że nie jest aktualizowana lista kategorii -> wymagane odświeżenie.
Ma ktoś pomysł co tu może nie grać?