Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][PHP] Autocomplete kilka pozycji input
noche
post
Post #1





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 20.02.2015

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


Witam

wzoruje się na stronie http://jqueryui.com/autocomplete ale niestety nie mogę znaleźć odpowiedzi do zdarzenia w którym wybieram państwo i w drugim polu input albo liscie wyboru dostane listę miast danego państwa
do tej pory odfiltrował odpowiedzi a jak przenieść to pole do kolejnego filtru? skrypt poniżej filtruje ciągi a jest możliwość stworzenia z tego tabeli i przeszukiwania jej wedlug warunków ?

<script>
$(function() { var dziala = [ <?php foreach( $panstwa as $value ) { echo " '$value', " ; } ?> ];
$( "#dziala1" ).autocomplete({ source: dziala }); });
</script>


mając przykładową tabele ( id , kraj, miasto ) w 1 polu wybieram kraj a w 2 polu wybiorę miasto danego kraju

bardzo proszę o podpowiedz jak można coś takiego zrobić
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
luki100011
post
Post #2





Grupa: Zarejestrowani
Postów: 243
Pomógł: 20
Dołączył: 20.04.2004
Skąd: Wielkopolska

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


Do drugiego pola pobierz dane korzystając z opcji "remote"
http://jqueryui.com/autocomplete/#remote

doklej do url-a wybrane państwo


--------------------
Go to the top of the page
+Quote Post
noche
post
Post #3





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 20.02.2015

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


śledziłem ten przykład ale poległem na search.php nie wiem co tam ma być . echo foreach'a z 3 kolumnami ( id , kraj, miasto ) ?

Ten post edytował noche 29.05.2015, 09:48:03
Go to the top of the page
+Quote Post
Turson
post
Post #4





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Zależy jak chcesz do tego podejść:
a) Zasysasz od razu wszystko z tabeli. Wstawiasz państwa pierwszego selecta. Robisz zdarzenie onchange() na tego selecta, z wybranego option wybierasz wartosc. Mając wartosc mozesz wyfiltrowac zassane miasta i je wstawic do drugiego selecta. Jak to zrobić? Do JS przesyłasz wszystkie miasta jako JSON. W JS parsujesz JSONa na tablicę i możesz sobie filtrowac.
cool.gif Masz państwa w pierwszym select. Robisz też zdarzenie onchange(), ale miasta pobierasz ajaxem

http://blog.turson.pl/dynamiczne-zalezne-selecty/

Ten post edytował Turson 29.05.2015, 10:04:59
Go to the top of the page
+Quote Post
noche
post
Post #5





Grupa: Zarejestrowani
Postów: 46
Pomógł: 0
Dołączył: 20.02.2015

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


fajny przykład a jak to odnieść do __soapCall

teraz robię tak

foreach( $wynik_panstwa->Panstwo as $value ) {
$panstwo = $value->Panstwo_nazwa;
$panstwa_str = $panstwa_str." '$panstwo', " ;
}

$(function() { var panstwa = [ <?php echo $panstwa_str ; ?> ];
$( "#panstwa" ).autocomplete({ source: panstwa }); });


nie ma problemu żeby zrobić z tego tabele ale co z
szukaj.php :
"
$stmt->bindValue(':marka', $_POST['marka'], PDO::PARAM_STR);
$stmt->execute();
"

formularz
"
$.ajax({
type: 'POST',
url: 'szukaj.php',
data: { 'marka':marka },
success: function(msg){
$("#modele").html(msg);
}
})
"


niestety nie mogę rozgryźć pliku search, co tam ma być żeby te dane się pobrały ?
jest jakiś przykład z statyczna tabelą ?


<script>
$(function() {
function log( message ) {
$( "<div>" ).text( message ).prependTo( "#log" );
$( "#log" ).scrollTop( 0 );
}

$( "#birds" ).autocomplete({
source: "search.php",
minLength: 2,
select: function( event, ui ) {
log( ui.item ?
"Selected: " + ui.item.value + " aka " + ui.item.id :
"Nothing selected, input was " + this.value );
}
});
});
</script>

Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 11:09