Right. My understanding increases bit by bit. I’m using response/xexpr, which — unlike your xexpr->html — doesn’t special-case script and style tags. Funny, I had read through your txexpr docs, but the special-casing of script and style didn’t jump out at me at the time, and I had forgotten it by the time I needed it.
cdata it is. Thanks to people like you, Racket does what I need, as usual. The problem is I don’t always know what I need. > On Sep 19, 2017, at 4:53 PM, Matthew Butterick <m...@mbtype.com> wrote: > > >> On Sep 19, 2017, at 1:36 PM, Byron Davies <byrondav...@starshine.us >> <mailto:byrondav...@starshine.us>> wrote: >> >> In strings, xexpr->xml converts "<>&” into <, etc. I’m sure this was >> well-intentioned, but in my use of web-server, I use javascript scripts >> through the (script “…”) form. In loop tests such as “i < n”, Javascript >> does not grok the transformed text “i < n”. I tried workarounds for as >> long as I could (e.g, using the “for key in lst” style of loops), but I >> reached the end of the line when I wanted to change the contents of a table >> cell using “cell.innerHTML = ‘<div …>’. >> > > > HTML ≠ XML. You probably want `xexpr->html`. [1] > > `script` and `style` blocks in HTML aren't declared as CDATA because they're > already deemed to be CDATA. [2] > > But in XML, they have no special status. Therefore, `xexpr->xml` is not > merely "well-intentioned" — it's doing what it promises. > > > [1] > https://docs.racket-lang.org/txexpr/index.html?q=txexpr#%28def._%28%28lib._txexpr%2Fmain..rkt%29._xexpr-~3ehtml%29%29 > > <https://docs.racket-lang.org/txexpr/index.html?q=txexpr#(def._((lib._txexpr/main..rkt)._xexpr-~3ehtml))> > > [2] https://www.w3.org/TR/html4/types.html#h-6.2 > <https://www.w3.org/TR/html4/types.html#h-6.2> > > > -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.