Mam prosty błąd. W kodzie z zewnętrznego pliku js:
$().ready(function() { $("#project-nav a").click(function() { var project; $.ajax({ type: "GET", url: "http://example.com/beta.php", data: "ajax=1&project_id=+zmienna, success: function(msg){ $('#project_inner').replaceWith(msg); } }); return false; }); });
Wszystko działa ok, ale do pierwszego wywołania kodu, po poprawnym pobraniu danych i zamianie elementu linki, które się znajdują w uaktualnionym elemencie przestają działać zgodnie z założeniem, tzn. nie jest wywoływana akcja zapytania AJAX tylko strona jest przeładowywana.
Wiem, że tak się dzieje ponieważ powyższy kod odnosi się do stanu po załadowaniu strony tradycyjnym żądaniem, po aktualizacji żądania AJAX-em nie ma zastosowania kod w $().ready - ale jedynie do tego uaktualnionego elementu.
Ale zamieszałem, mam nadzieję, że ktoś zrozumie i podpowie jak to rozpisać by działało - dodawanie atrybutów w stylu onclick do linków raczej odpada.