Post ten rozpoczyna cykl krótkich notatek, jakie zapisywałem sobie na moim drugim blogu po angielsku a postanowiłem je dodać również tutaj.
Dwa dni temu miałem problem z Ajax.Autocompleter (z biblioteki script.aculo.us). Potrzebowałem użyć dynamicznych parametrów wysyłanych w żądaniu do serwera. Normalnie są one tworzone statycznie w czasie kiedy tworzona jest instancja klasy. Oczywiście można zmienić to zachowanie, np.:
new Ajax.Autocompleter( 'search', 'autocomplete_choices', 'index.php?controller=search&action=autocomplete', { paramName: 'name', callback: function(element, entry) { return entry+"&"+Form.Element.serialize('type'); } } );
Wykorzystując callback możemy dodać dynamiczne parametry do naszych zapytań.
Może znacie jakiś lepszy/inny sposób?
Można by w 3ci parametrze (któremu btw. nie zamknąłeś cudzysłowu) zrobić coś takiego ‚index.php?’ + jakas_funkcja(). Tylko to zadziała jeśli JS jest leniwie ewaluowany – a tego nie wiem i nie chce mi się sprawdzać 😛
Edit. chyba jest.
Eidt2. chyba jednak nie – firebug wypaczył wynik testu.
Dzięki 🙂 Już domknąłem 😉