Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Strona z użyciem Ajax i skrypt Autocomplete
_chris_
post
Post #1





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 19.08.2011

Ostrzeżenie: (0%)
-----


Witam wszystkich.

Mam zrobioną stronkę, która cała korzysta z technologii Ajax. Używam do obsługi Prototype. Przeładowuje mi się cały czas kontener main i wszystko gra:)

Chciałem teraz na jeden z podstron która tez jest generowana Ajaxowo wsadzić do jednego pola autocomplete z jQuery. Wcześniej już takie rzeczy robiłem, łatwe proste i przyjemne. Ale miałem wszystkie pola na stałe. Teraz jak użyję:

  1. $(document).ready(function()
  2. {
  3.  
  4. $('#wyszukaj').autocomplete(
  5. {
  6. source: "search.php",
  7. minLength: 2,
  8. select: function( event, ui ) {
  9.  
  10. }
  11. });
  12. });


No to tego elementu nie ma przy ładowaniu strony. Próbowałem w tym htmlu geenrowanym przez php (ajaxowo) wsadzić w znaczniki <script></script> to samo, ale nie odpala się ten skrypt w ogóle. Jak dałem tam alert('cos'); to sie nie wyswietla.

Czy mozecie mi pomoc gdzie wstawić kod JS do autocomplete aby zadziałało? Dzięki
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
_chris_
post
Post #2





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 19.08.2011

Ostrzeżenie: (0%)
-----


adres: http://chris.vot.pl/test/1.php

Pliki:
1.php:
  1. <a href="java script: generuj()">Generuj ajax</a>
  2.  
  3. <div id="main"></div>
  4.  
  5. <div id="cos"><input type="text" id="wyszukaj1"/></div>


2.php
  1. <script type="text/javascript" src="js1.js"></script>
  2. Wygenerowane ajaxowo!
  3. <br>
  4. <input type="text" id="wyszukaj2" />Tutaj już nie da się włączyć autocomplete
  5. <br><br><br>
  6. <script type="text/javascript">
  7. alert('alert');
  8. </script>


js.js
  1. function generuj(){
  2.  
  3. var pars = '';
  4.  
  5.  
  6. new Ajax.Updater(
  7. 'main',
  8. '2.php',
  9. {method: 'post'
  10. });
  11. }
  12.  
  13. jQuery(document).ready(function()
  14. {
  15.  
  16. jQuery('#wyszukaj1').autocomplete(
  17. {
  18. source: "search.php",
  19. minLength: 2,
  20. select: function( event, ui ) {
  21.  
  22. }
  23. });
  24.  
  25. });


js1.js
  1. // JavaScript Document
  2. jQuery(document).ready(function()
  3. {
  4.  
  5.  
  6. jQuery('#wyszukaj2').autocomplete(
  7. {
  8. source: "search.php",
  9. minLength: 2,
  10. select: function( event, ui ) {
  11.  
  12. }
  13. });
  14. });



Jak widać w 1.php ładnie autouzupełnia. Jak klikniemy, to pobiera ajaxowo tresc strony z drugim wyszukaj, ale tam to już nie działa. Dołożyłem jeszcze specjalnie wszystnie skrypty w tym 2.php ale i tak jest kicha;/ Nie wyświetla się ani alert ani nie działa autocomplete. Jak wejdziemy bezpośrednio w 2.php, to wyświetla się alert + autocomplete działa.

próbowałem jeszcze na zdarzeniu onComplete, ale tez nie z tego, bo to się wykonuje przed wysłaniem danych do okna, a wtedy nie ma jeszcze elementów na stronie, no to nie można się odwołać do elementu którego nie ma. Jeszcze próbowałem kilka innych sposobów, ale o to chodzi, że po załadowaniu strony pobranej z ajaxem żaden JS się nie wykonuje;/

Mam nadzieje że nie zamieszałem za dużo:)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 07:05