Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

How to convert HTML entities to their applicable characters with a java script

Skip to first unread message

Stefan Mueller

unread,
Mar 20, 2006, 12:00:05 AM3/20/06
to
Because the characters ', ", ... make troubles in my input boxes I use the
following PHP command while generating the page
htmlentities($my_var, ENT_QUOTES);

However, if I use in my java scripts the string generated by htmlentities it
shows
', /", ...

Is there a java script command to change
' to '
/" to "
...
?

Sterfan


marss

unread,
Mar 20, 2006, 2:51:51 AM3/20/06
to
Stefan Mueller wrote:

> Is there a java script command to change

Yes, use Reqular expression.
http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Guide:Regular_Expressions


> ' to '
what difference?


> /" to "
Example:
var re = new RegExp("\/"");
var newText = oldText.replace(re, '"');

marss

unread,
Mar 20, 2006, 2:52:44 AM3/20/06
to
Stefan Mueller wrote:

> Is there a java script command to change

Yes, use Reqular expression.
http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Guide:Regular_Expressions


> ' to '
what difference?


> /" to "
Example:
var re = new RegExp("\/"");
var newText = oldText.replace(re, '"');

where oldText is the text that contains incorrect symbols.

Stefan Mueller

unread,
Mar 20, 2006, 11:36:02 PM3/20/06
to
Sorry that I didn't describe my problem more exact.

I read data (e.g. ДЖЭджэГИЮХ"') from my MySQL database which I'd like to
show in an input box.

<?php
$mysql_data = "ДЖЭджэГИЮХ\"'";
$html_data = addslashes(htmlentities($mysql_data, ENT_QUOTES));

echo "<script type = 'text/javascript'>";
echo "function set_old_data() {";
echo "my_form.input1.value = var_old_data;";
echo "}";
echo "var_old_data = '" . $html_data . "';";
echo "</script>";

echo "<body>";
echo "<form name = 'my_form' action = '' method = 'post' accept-charset
= 'iso-8859-1'>";
echo "<input type = 'text' name = 'input1' value = '" . $html_data .
"'>";
echo "<input type = 'button' value = 'Old Data' onClick =
'set_old_data()'>";
echo "</form>";
echo "</body>";
?>

The command
echo "<input type = 'text' name = 'input1' value = '" . $html_data . "'>";
shows my data ДЖЭджэГИЮХ"' in the input box perfect.

But if I click on the button 'Old Data' the Java script function
'set_old_data' shows in the input box
&auml;&ouml;&uuml;&Auml;&Ouml;&Uuml;&ccedil;&eacute;&agrave;&egrave;&quot;&#039;
instead of
ДЖЭджэГИЮХ"'

Therefore I need a Java script function with translates
&auml;&ouml;&uuml;&Auml;&Ouml;&Uuml;&ccedil;&eacute;&agrave;&egrave;&quot;&#039;
to
ДЖЭджэГИЮХ"'

In PHP I could do that with the function
html_entity_decode()

But how can I do it with a Java script?
Stefan

PS: html_entity_decode() is the opposite of htmlentities() in that it
converts all HTML entities to their applicable characters from string.


0 new messages