Struppi: AJAX und Sonderzeichen

Beitrag lesen

ich habe gerade mein erstes AJAX geschrieben. Der Code der dabei benutzt wird wird von der normalen Seitendarstellung genutzt und auch vom Ajax. Die gesamte Seite ist als iso-8859-1 kodiert.

So wie es aussieht, stimmt das nicht. Du kannst dir das schnell anzeigen lassen, in dem z.b. im Firefox dir die Seiteninformationen anzeigen läßt (Kontextmenü).

Aha. Da steht dann auch: text/html; charset=iso-8859-1

Das wiederspricht deinen Schilderungen, wenn du in einer ISO Seite UTF-8 kodierte Zeichen hast, dann siehst du immer zwei seltsame Zeichen und kein Fragezeichen.

Komisch daran ist dass das eine Ajax nur mit UTF8 funktioniert aber nicht mit iso und das andere nur mit iso aber nicht mit utf8... Obwohl die aufgerufenen php-skripte eigentlich nicht unterschiedlich sind.

Deine ganzen Schilderungen sind komisch, da sie so nicht sein können. Es gibt aber noch mehr Stellen, wo die Kodierung dir einen Strich durch die Rechnung machen könnte. Dazu müßte man aber das ganze mal sehen.

var url="###formdirection###";
    url=url+"?eID=ajaxsearch";
    url=url+"&ajaxquery="+suchbegriff;
    url=url+"&ajaxcid=###ajaxcid###";
    url=url+"&pagelink=###pagelink###";
    url=url+"&templatefile=###templatefile###";
    url=url+"&sid="+Math.random();

Hast du mal versucht ob auch Umlaute o.ä. übertragen werden? Du musst auch die Parameter eines AJAX Objektes URL kodieren. Am sinnvollsten mit http://de.selfhtml.org/javascript/objekte/unabhaengig.htm#encode_uri_component@title=encodeURIComponent

Umlaute werden übertragen ....

Auch Sonderzeichen wie %/$&?
Ohne Kodierung kann das nicht gut gehen.

Struppi.