AJAX and character

Discussion in 'Javascript' started by servandomontero@gmail.com, Feb 1, 2007.

  1. Guest

    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
    , Feb 1, 2007
    #1
    1. Advertising

  2. Daz Guest

    On Feb 1, 8:01 pm, ""
    <> wrote:
    > 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
    Daz, Feb 1, 2007
    #2
    1. Advertising

  3. SM Guest

    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

    On Feb 1, 3:14 pm, "Daz" <> wrote:
    > On Feb 1, 8:01 pm, ""
    >
    >
    >
    > <> wrote:
    > > 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....
    SM, Feb 1, 2007
    #3
  4. Daz Guest

    On Feb 1, 8:50 pm, "SM" <> wrote:
    > 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
    >
    > On Feb 1, 3:14 pm, "Daz" <> wrote:
    >
    > > On Feb 1, 8:01 pm, ""

    >
    > > <> wrote:
    > > > 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....


    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.
    Daz, Feb 2, 2007
    #4
    1. Advertising

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

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Velvet
    Replies:
    9
    Views:
    14,779
    Joerg Jooss
    Jan 19, 2006
  2. minnie
    Replies:
    1
    Views:
    672
    Andrew Thompson
    Dec 13, 2006
  3. Replies:
    3
    Views:
    488
    James Kanze
    Nov 18, 2007
  4. George2
    Replies:
    2
    Views:
    367
    James Kanze
    Jan 25, 2008
  5. Replies:
    7
    Views:
    3,553
Loading...

Share This Page