Autor Zpráva
vinnetou
Profil *
Dobry den,
mam nasledujici problem. Mam vytvorenou asp stranku, na ktere mam formularove pole. Pri zmene pole se pomoci javascriptu (AJAX) provede dotaz a zobrazuje se select se zaznamy z databaze (v podstate jakesi napovidani). Musim pouzivat kodovani win 1250.

Vsechno funguje v poradku az na to, ze v selectu, ktery mi vraci AJAX, je rozhazena cestina (zbytek stranky nema s cestinou problem). Prijde mi, ze se mi vraci data v UNICODU na misto v win 1250. Nevite jak tento problem vyresit?

diky
lukas87
Profil *
v asp se nevyznám, ale v php sem to řeší tak, že se do souboru kterej selectuje z databáze odešlou hlavičky s kódováním
header('Content-Type: text/html; charset=iso-8859-2');
v asp to bude asi podobné řešení.
to vyřeší problém s výpisem těch dat ne se vstupem. (když do vstupního inputu napíšu například š a mělo by to v databázi najít slovo šumava tak to nenajde)
vinnetou
Profil *
diky za tip. Ozkousim.

podobny problem jako ty jsem mel taky. Vyresit mi ho pomohlo v javascriptu toto:

var url="napoveda.asp?dotaz=" + encodeURI(hodnotaPole);

na strane ASP jsem pak dal:

dotaz=decodeURI(String(Request("dotaz")));

a pote provedl dotaz do databaze.
lukas87
Profil *
vinnetou použil jsem encodeURI, ale stále nic. Při načtení proměnné se místo š ukáže ĹĄ :-(
vinnetou
Profil *
hmm, tak to bohuzel netusim, kde je zadrhel. mne vyhledavani cestiny funguje.


muj problem jsem nakonec vyresil takto:
Response.Write('<option value="'+Server.HTMLEncode(hodnota)+'">'+Server.HTMLEncode(hodnota)+'< /option>')

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: