Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用javascript编码特殊字符_Javascript - Fatal编程技术网

用javascript编码特殊字符

用javascript编码特殊字符,javascript,Javascript,在我的页面上,我有一个div和一个与其关联的按钮。如果点击该按钮,div文本将变为可编辑文本,但其中的当前文本将保存为javascript变量。再次按下按钮时,原始文本将放回div。但是,如果div包含类似&或'的内容,则会将其放回类似$\39。如何在javascript代码中检查并解决此问题 我的想法是检查将返回的字符串,例如&#,因为这似乎是它们开始的模式,但我不确定如何在这之后将其转换为正确的符号。encodeURIComponent()和decode uricomponent()将为您编

在我的页面上,我有一个div和一个与其关联的按钮。如果点击该按钮,div文本将变为可编辑文本,但其中的当前文本将保存为javascript变量。再次按下按钮时,原始文本将放回div。但是,如果div包含类似
&
'
的内容,则会将其放回类似
$\39。如何在javascript代码中检查并解决此问题

我的想法是检查将返回的字符串,例如
&#
,因为这似乎是它们开始的模式,但我不确定如何在这之后将其转换为正确的符号。

encodeURIComponent()和decode uricomponent()将为您编码和解码。
不要将当前文本保存在javascript变量中。这是一条艰难的道路。相反,请使用“显示和隐藏”。按下按钮一次,显示可编辑版本并隐藏静态版本。再次按下按钮,显示静态并隐藏输入。如果需要处理表单,还可以在隐藏时禁用,在显示时启用。

请发布用于保存和恢复文本的代码。Hmm。所以,在我的div中,我会有两次相同的文本,但根据发生的事情,我会隐藏一半?我通常用两个div,一个接一个地进行。这样会更干净一些,因为你可以直接运行节目,然后躲在包装袋里。不过,是的,这是最基本的想法。在jQuery(它有$.show()和$.hide()函数)中非常简单,但在普通javascript中并不难。只需在“显示:块”和“显示:无”之间交换样式。