Autor Zpráva
smiesek
Profil

nikde se mi prosím zatím nepodařilo dohledat řešení, jak na autocomplete dle následujícího, aby při zadání např.

Černý

to postupně nabídlo

Cerny
Černý


Uvažuju právě o takové úpravě, kdyby uživatel psal bez diakritiky, aby se nabídly i položky s diakritikou.
juriad
Profil
Budeš normalizovat obě stranky, jak hledaný výraz, tak i slova, ve kterých hledáš.
smiesek
Profil
juriad:
tohle mi prosím nic neřeklo, můžu poprosit o nějaký odkaz, kde to je řešeno a nebo pod čím to hledat?

Ani zahraniční stránky mi nic nenašly.
juriad
Profil
Na odkázané stránce máš ve zdrojáku:
    $( "#developer" ).autocomplete({
      source: function( request, response ) {
        var matcher = new RegExp( $.ui.autocomplete.escapeRegex( normalize(request.term) ), "i" );
        response( $.grep( names, function( value ) {
          value = value.label || value.value || value;
          return matcher.test( value ) || matcher.test( normalize( value ) );
        }) );
      }
    });
Stačí přidat jedno další volání normalize, jak jsem naznačil. Samozřejmě, že funkci normalize (a pole accentMap) budeš muset rozšířit, aby fungovala s libovolnými diakritickými znaky a ne jen á a ö. Inspiruj se tady: http://stackoverflow.com/questions/990904/javascript-remove-accents-diacritics-in-strings.
smiesek
Profil
juriad:
fíha, aha děkuju, musím nastudovat, přesto jsem tedy ráda že se mám zaměřit na vyhledávání dle normalize a accentMap

pochopila jsem tak, že accentMap pomocí něj vytvořím převodní tabulku, ale v překladu normalize to netuším proč tam je, nebo k čemu slouží
juriad
Profil
accentMap nakonec výbec nepoužiješ a implementaci normalize z té ukázky také ne (použij to ze StackOverflow). Také budeš muset předělat tu funkci v autocomplete.
Máš už nějaký funkční skript, který umí hledat, ale neřeší zatím tu diakritiku?
smiesek
Profil
juriad:
ano vycházela jsem z následujícího scriptu, do kterého jsem to chtěla zkusit implementovat

stačí třeba prosím nějak nasměrovat, pokud bych na to nějak přišla, jak to upravit, pokud bych se tím zase nepárala půl roku jak je u mě zvykem
juriad
Profil
smiesek:
Pozor na to, ten skript není správně. Může způsobit naprostou nefunkčnost JavaScriptu, pokud by nějaké ze slov obsahovalo uvozovky nebo zpětné lomítko na nevhodném místě.
Kolik prvků chceš napovídat? Jsou jich desítky, nebo spíš tisíce?

Nevadilo by ti, kdybych tvůj problém vyčlenil do vlastního vlákna?
smiesek
Profil
juriad:
tak já předpokládám, že uživatel nebude vkládat uvozovky a ani zpětné lomítko, které nejsou asi součástí dat, pro která jej mám vytvořené.

Určitě by mi to nevadilo, a zatím mám databázi cca 230 prvků s tím ještě upravené, že to napovídá až od 2. znaku zadání.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: