Vyhledávací formulář s „nápovědníkem“ a specialní znaky
- wallkysek
- Člen | 52
Zdravím, vím že se to zřejmě netýká ani nette, ale spíš php jako takového. I tak doufám že mi poradíte. Píšu vyhledávací komponentu, vyhledávám výskyt jednotlivých slov:
foreach($data as $word){
$tempdata = preg_grep("/$word/i", $tempdata);
}
jenže když dám hledat např.: Barum 245/50, tak se požadavek(ajax) odešle, jenže nic se nestane, výstup(nápovědník) zůstane takový jaký byl před 245/50, pokud zadám čístě jen řetězec 245/50, tak se také nic nenalezne. Někdo nějaký nápad? Děkuji
- vitush93
- Člen | 33
wallkysek napsal(a):
Zdravím, vím že se to zřejmě netýká ani nette, ale spíš php jako takového. I tak doufám že mi poradíte. Píšu vyhledávací komponentu, vyhledávám výskyt jednotlivých slov:
foreach($data as $word){ $tempdata = preg_grep("/$word/i", $tempdata); }
jenže když dám hledat např.: Barum 245/50, tak se požadavek(ajax) odešle, jenže nic se nestane, výstup(nápovědník) zůstane takový jaký byl před 245/50, pokud zadám čístě jen řetězec 245/50, tak se také nic nenalezne. Někdo nějaký nápad? Děkuji
nebylo by jednodušší použí jquery autocomplete? Prohledávaná data buď hardcodneš do js nebo sypeš z db v JSON formátu. Jestli teda nejsem mimo s tím co vlastně potřebuješ..
- wallkysek
- Člen | 52
vitush93 napsal(a):
wallkysek napsal(a):
Zdravím, vím že se to zřejmě netýká ani nette, ale spíš php jako takového. I tak doufám že mi poradíte. Píšu vyhledávací komponentu, vyhledávám výskyt jednotlivých slov:
foreach($data as $word){ $tempdata = preg_grep("/$word/i", $tempdata); }
jenže když dám hledat např.: Barum 245/50, tak se požadavek(ajax) odešle, jenže nic se nestane, výstup(nápovědník) zůstane takový jaký byl před 245/50, pokud zadám čístě jen řetězec 245/50, tak se také nic nenalezne. Někdo nějaký nápad? Děkuji
nebylo by jednodušší použí jquery autocomplete? Prohledávaná data buď hardcodneš do js nebo sypeš z db v JSON formátu. Jestli teda nejsem mimo s tím co vlastně potřebuješ..
ale já používám autocomplete, doufám tedy že né špatně :D
var select_name = "GoogleSearch";
$("#google").autocomplete({
source: function( request, response ) {
$.ajax({
url: "{!$presenter->link('autocomplete')}",
data: {
whichData: select_name,
typedText: request.term
},
success: function( data ) {
response( $.map( data, function( item ) {
return { label: item, value: item }
}));
}
});
},
minLength: 2,
open: function() {
$(this).removeClass("ui-corner-all").addClass("ui-corner-top");
},
close: function() {
$(this).removeClass("ui-corner-top").addClass("ui-corner-all");
}
});
takto to mám v JS a potom v homepage presenteru → renderAutocomplete(…, …){}