Toon posts:

[javascript] speciale karakters als ? in listmenu

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik gebruik onderstaande code als onderdeel van een functie om namen uit db in listmenu te laten verschijnen. Echter bij een aantal karakters zoals â (deze zijn ook als zodanig in sql db opgeslagen) een ? te zien.
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
var objGemeente
parentobj=document.getElementById("plaatsnamen")
parentobj1=document.getElementById("gemeenten")
parentobj1.options.length = 0;
parentobj.options.length = 0;
objarr1=oXMLHTTP1.responseText.split("|")
for(i=0;i<objarr1.length;i++)
{
myGemeenteValue=objarr1[i];
myGemeenteName=objarr1[i]; 
objGemeente=new Option(myGemeenteValue,myGemeenteName)
parentobj1[i]=objGemeente
}


Reeds de volgende oplossingen geprobeerd:
- de items terughalen uit db in string (response.write) geeft een juiste weergave
- als die lijst ingelezen wordt door bovenstaande js om ze te splitten in stukjes gaat het fout. Zowel Decimal, Unicode format geprobeerd maar zonder resultaat. Het lijkt alsof js voor het probleem zorgt, maar waar gaat het mis?
Met verschillende string replace functies de string laten doorzoeken op een aantal karakters, deze laten vervangen met juiste entiteit alleen dan wordt deze niet terug geconverteerd naar html code
(Gaasterlân ziet er dan uit als Gaasterl\u00E2n / Gaasterlân)

Charset is : <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
Help...

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

Tsjah, da's nou unicode :| Ik heb er vandeweek ook mee te maken gehad maar ik heb er ook nog niets op kunnen vinden...

Stop uploading passwords to Github!


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

De oplossing is simpel: zorg dat je server (of script) een content-type header meegeeft met de juiste charset; bijvoorbeeld:
PHP:
1
2
header('Content-type: text/plain; charset=ISO-8859-1');
echo 'èéë';

Intentionally left blank


Verwijderd

Topicstarter
crisp schreef op vrijdag 30 september 2005 @ 16:43:
De oplossing is simpel: zorg dat je server (of script) een content-type header meegeeft met de juiste charset; bijvoorbeeld:
PHP:
1
2
header('Content-type: text/plain; charset=ISO-8859-1');
echo 'èéë';
Volstaat een meta van <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> niet hierin? Deze staat al in de pagina..

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

Verwijderd schreef op vrijdag 30 september 2005 @ 23:23:
[...]

Volstaat een meta van niet hierin? Deze staat al in de pagina..
Nee; je haalt externe data op, en die data moet voorzien zijn van de juiste headers. De meta-tag van je pagina zegt daar niets over.

Intentionally left blank