Witam,
temat autocomplte, autosuggest live search.... był wielokrotnie wałkowany.
Ostatnio znalazłem na swoje potrzeby kolejne rozwiązanie tego typu:
http://nodstrum.com/2007/09/19/autocompleter/ Dostosowałe do swoich potrzeb i działa znakomicie.
Zapragnąlem jednak zmian. Chciałbym przekazywac nieco więcej danych do ukrytych pól, by potem sobie je przerobić via PHP.
i tak:
dla przykladowego pliku rpc.php:
<?php
// wyciagam np. 3 dane z tabeli
$query = $db->query(\"SELECT name, pole2, pole2 FROM tabela WHERE name LIKE '$queryString%' LIMIT 10\");
if($query) {
while ($result = $query ->fetch_object()) {
// podpowiedzi wyswietlam jako liste, dodalem rowniez kolejne zmienne
echo 'name.'\');fill1(''.$result->pole1.'');fill2(''.$result->pole2.'');\">'.$result->name.'  '.$result->pole1.''; }
}
?>
następnie w pliku index.html:
zmodyfikowałem funkcje dodając 2 nowe: fill1i fill2 oraz $('#suggestionslink'):
<script type="text/javascript"> function lookup(inputString) {
if(inputString.length == 0) {
// Hide the suggestion box.
$('#suggestions').hide();
$('#suggestionslink').show();
} else {
$.post("rpc.php", {queryString: ""+inputString+""}, function(data){
if(data.length >0) {
$('#suggestionslink').hide();
$('#suggestions').show();
$('#autoSuggestionsList').html(data);
}
});
}
} // lookup
function fill(thisValue) {
$('#inputString').val(thisValue);
setTimeout("$('#suggestions').hide();", 200);
setTimeout("$('#suggestionslink').show();", 200);
}
[color="#006400"] function fill1(thisValue1) {
$('#div1').val(thisValue1);
}
function fill2(thisValue2) {
$('#div2').val(thisValue2);
}
<!-- ........ potem dodaje 2 nowe inputy do wyswietlania dodatkowych pol-->
<input type="text" name="div1" id="div1" onkeyup="lookup(this.value1);" onblur="fill1();" /> <input type="text" name="div2" id="div2" onkeyup="lookup(this.value2);" onblur="fill2();" /> <div class="suggestionsLink" id="suggestionslink" style="display: none;">link
</div>
wyswietlaja sie 2 dodatkowe dane, ktore chcialem, pojawia sie rowniez napis link, ale zamiast niego chcialbym uzyskac np.cos takiego:
<a href="http://adres.pl/skrypt?link=zmienna.value1?link2=zmienna.value2">link</a>
Jak wrzucic te zmienne do linku?
Dzieki.
PW
Ten post edytował cytrysek 6.02.2008, 00:49:13