Is it possible to display superscript characters in the alert() dialog?
Solution 1
There's nothing magical about that character code - it just happens to be the one picked for the "Superscript two" character. There's also a "Superscript three" (\u00B3
) (³) a "Superscript one" (\00B9
) (¹), and a "Superscript Latin Small Letter N" (\u207F
) (ⁿ). But if you need some other superscript, you're out of luck - alert()
doesn't render HTML, so you're limited to the characters defined by Unicode.
You might be better off abandoning alert()
entirely, and simulating a modal dialog within the page itself. Many libraries exist to provide this functionality already, including the excellent jQuery UI Dialog.
Solution 2
No, there's no reliable way of getting superscript text into an alert box. You could certainly do it on the page using the HTML <sup>
tag, but in an alert box you're more limited.
The problem is: there is no "Unicode \u00B
" character. The character you're using is \u00B2
(defined as "Superscript Two"). The fact that there's a two at the end is essentially coincidental. The code point \u00B1
, for example, is unrelated (it's the plus/minus sign).
There are a few other characters that have specific superscript versions in Unicode, which you can find in this search, but there aren't superscript versions of every letter.
Solution 3
Unicode, or UTF-8 requires two pairs of characters, or four hexadecimal digits to make a character; 00B2
is recognized as "superscript 2" whereas 00Bn
is an invalid hexadecimal value. The superscript numbers 1-3 are: 00B9
, 00B2
, and 00B3
.
Unfortunately there is no magical superscript-prefix that will make the following character superscript. Only HTML <sup>
can do that and, like Shog said, alert renders plain text.
George
Updated on July 29, 2022Comments
-
George almost 2 years
Is it possible to display superscripted characters (not only numbers) in the
alert()
,confirm()
orprompt()
dialogue boxes in JavaScript?Due to some reasons I need to insert a text:
2 followed by superscripted 'n' 2^n
Into JavaScript alert, confirm and prompt boxes. Fast google searching did help but not exactly I found a way to display superscripted numbers in dialogue boxes using Unicode \u00B character but it doesn't work with characters
alert('2\u00B2'); shows correctly 2^2 alert('2\u00Bn'); shows 2u00Bn
So the goal is to show a character superscripted not the number.
^ is used as Power and to show that next character is superscripted, just in case someone gets confused.
-
Nathan Osman about 14 years+1 for mentioning the jQuery UI. It's the best alternative to alert() by far - and allows for a consistent look across a site.