AJAX and character

  • Thread starter servandomontero
  • Start date
S

servandomontero

I have a simple AJAX script that sends and retrieves a text file. The
ajax function is called from index.html

....
var obj = document.getElementById(objID);

xmlHttp.open("GET", "testing.txt", true);
xmlHttp.onreadystatechange = function()
{
if (xmlHttp.readyState == 4 && xmlHttp.status == 200)
{
obj.innerHTML = xmlHttp.responseText;
}
}

xmlHttp.send(null);
....

The script works OK. I can see the 'testing.txt' file just fine. The
issue is that the file (testing.txt) contains spanish character like:
í, á

and i see this ? instead of those spanish characters.

This is my syntax in my index.html:
....
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://
www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Sample 2_1</title>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1" />
....


What's wrong?

Is this a server issue? Coz' i'm hosting with Yahoo and i dont have
access to change the configuration of the server, obviously.

Please Help
sm
 
D

Daz

I have a simple AJAX script that sends and retrieves a text file. The
ajax function is called from index.html

...
var obj = document.getElementById(objID);

xmlHttp.open("GET", "testing.txt", true);
xmlHttp.onreadystatechange = function()
{
if (xmlHttp.readyState == 4 && xmlHttp.status == 200)
{
obj.innerHTML = xmlHttp.responseText;
}
}

xmlHttp.send(null);
...

The script works OK. I can see the 'testing.txt' file just fine. The
issue is that the file (testing.txt) contains spanish character like:
í, á

and i see this ? instead of those spanish characters.

This is my syntax in my index.html:
...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Sample 2_1</title>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1" />
...

What's wrong?

Is this a server issue? Coz' i'm hosting with Yahoo and i dont have
access to change the configuration of the server, obviously.

Please Help
sm


The problem is that the server is not setting the header for the
returned data, so it's not processed correctly when it gets to the
client.

THis article should help you figure out how to solve the problem:
http://www.taylanpince.com/blog/AJAX-and-Multibyte-Character-Support.html
 
S

SM

Thanks Daz for your answer. Basically what your saying is to use PHP
script instead of a txt file. Got it!
I will try it.

Thanks
sm
 
D

Daz

Thanks Daz for your answer. Basically what your saying is to use PHP
script instead of a txt file. Got it!
I will try it.

Thanks
sm

Not necessarily. I am just saying that you should use some kind of
script (be it ASP, PHP, Java, Perl, etc), to read the text file, and
set the header before sending it to the client.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,982
Messages
2,570,189
Members
46,734
Latest member
manin

Latest Threads

Top