我遇到了一个小问题。
问题是,在我的数据库中,我得到了一条文本,然后我将其打印到屏幕上,代码如下:
<p>Text 1</p>
<p>Text 2</p>
这是HTML中的输出,因为我使用tinyMCE插件。到目前为止进展顺利。问题是,我想把它放在一个javascript变量中(比如:onclick="my_function(the_text_above)")
,但输出代码会换行,当函数运行时会变成一个非法的令牌
希望你能帮我解决我遇到的这个问题。
您只需将/n(新行)替换为无
PHP
echo str_replace("'n","","your 'n text");
Javascript
"Your 'ntext".split("'n").join("")
为此使用json_encode
。
它看起来像:
var jsVariable = <?php echo json_encode($stringFromDb); ?>;
无论输入如何,json_encode
都将生成合法的js文本。
附言:如果你需要的只是正确地清理数据,那么删除行是没有意义的。
我知道您想从字符串中去掉换行符。您可以使用str_replace来执行此操作。
str_replace("'n",'');
这将从字符串中删除UNIX中断。我不知道您的代码包含哪种类型的break,所以''n可能无法立即工作。另一个是"''r",我想其他人很少,遗憾的是我并不都认识。