Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.javascript > #26394

Re: simple error

From "Jukka K. Korpela" <jkorpela@cs.tut.fi>
Newsgroups comp.lang.javascript
Subject Re: simple error
Date 2014-12-28 21:00 +0200
Organization A noiseless patient Spider
Message-ID <m7pk06$g10$1@dont-email.me> (permalink)
References <m7pdlm$1ju$1@gregory.bnet.hr> <1485747.16sIkefZu1@PointedEars.de>

Show all headers | View raw


2014-12-28, 19:25, Lahn wrote:

> Haris Bogdanovich wrote:
>
>> <td onclick='this.innerHTML = 'X';'>--</td>
>>
>> Why it won't change to X when I click on it ?
>
> Possibility: Assuming error correction, the resulting script code is
>
>    this.innerHTML = X;
>
> and the identifier “X” is not defined.  (See the error console.  See the FAQ
> for details on debugging.)

Apparently Lahn did not bother actually looking at the error console. 
Should we bother looking at this “FAQ”, which he calls “the FAQ”?

In reality, as we can see using a browser’s Developer Tools, the code is 
parsed so that one attribute is

onclick="this.innerHTML = "

and another attribute is

x';'

with no value set. The latter is of course ignored, whereas the first 
one sets up an event handler that will terminate in an error (an 
assignment without right-hand-side).

An HTML validator issues several error messages about the construct. The 
error is really at the HTML markup level.

The problem is caused by an attempt to use the Ascii apostrophe (') 
inside an attribute value delimited by Ascii apostrophes. That just 
can’t work. There are various alternative ways to deal with this, such as

1) Use Ascii quotation marks (") as attribute value delimiters and Ascii 
apostrophes inside the value (as JavaScript string literal delimiters), 
or vice versa. E.g. "this.innerHTML = 'X';" or 'this.innerHTML = "X";'

2) Write the Ascii apostrophes inside the value using the reference 
&apos;, e.g. 'this.innerHTML = &apos;X&apos;;'

-- 
Yucca, http://www.cs.tut.fi/~jkorpela/

Back to comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

simple error Haris Bogdanovich <haris.bogdanovic@gmail.com> - 2014-12-28 18:12 +0100
  Re: simple error Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-12-28 18:25 +0100
    Re: simple error "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2014-12-28 21:00 +0200
      Re: simple error Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-12-28 21:32 +0100
        Re: simple error "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2014-12-28 23:56 +0200
  Re: simple error Denis McMahon <denismfmcmahon@gmail.com> - 2014-12-28 18:46 +0000
    Re: simple error "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2014-12-28 21:13 +0200
      Re: simple error Denis McMahon <denismfmcmahon@gmail.com> - 2014-12-28 23:19 +0000
        Re: simple error Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-12-29 01:03 +0100
        Re: simple error "Christoph M. Becker" <cmbecker69@arcor.de> - 2014-12-29 01:08 +0100
    Re: simple error Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-12-28 20:13 +0100
      Re: simple error "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2014-12-28 22:30 +0200
        Re: simple error Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-12-28 21:44 +0100
          Re: simple error "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2014-12-28 23:50 +0200
            Re: simple error "Christoph M. Becker" <cmbecker69@arcor.de> - 2014-12-28 23:10 +0100
              Re: simple error Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-12-29 03:10 +0100
                Re: simple error "Christoph M. Becker" <cmbecker69@arcor.de> - 2014-12-29 13:17 +0100
                Re: simple error Tim Streater <timstreater@greenbee.net> - 2014-12-29 12:30 +0000
                Re: simple error "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2014-12-29 14:49 +0200
                Re: simple error Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-12-29 15:18 +0100
              Re: simple error "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2014-12-29 08:20 +0200
                Re: simple error "Christoph M. Becker" <cmbecker69@arcor.de> - 2014-12-29 12:36 +0100
                Re: simple error Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-12-29 15:40 +0100
            Re: simple error Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-12-29 01:04 +0100
              Re: simple error "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2014-12-29 08:09 +0200

csiph-web