从PHP中的Javascript中提取引号

时间:2016-06-06 08:21:34

标签: javascript php

我在PHP中有以下代码,它不起作用:

echo "<script language=\"javascript\">
function rebuild_preview(){

     var Title = document.getElementById('title').value;
     var LYTtitle = document.getElementById('lyt_title');
     if (LYTtitle !== null){
     document.getElementById('lyt_title').innerHTML = Title.replace(/\r?\n/g, '<br />');
     }
}
</script>";

我认为这是因为Title.replace部分中的引号。有人知道处理它的正确方法吗?

2 个答案:

答案 0 :(得分:1)

使用PHP CLI进行简单的测试代码

config\database.php

生成此输出

echo "<script language=\"javascript\">
function rebuild_preview(){

     var Title = document.getElementById('title').value;
     var LYTtitle = document.getElementById('lyt_title');
     if (LYTtitle !== null){
     document.getElementById('lyt_title').innerHTML = Title.replace(/\r?\n/g, '<br />');
     }
}
</script>";

请注意<script language="javascript"> function rebuild_preview(){ var Title = document.getElementById('title').value; var LYTtitle = document.getElementById('lyt_title'); if (LYTtitle !== null){ ? document.getElementById('lyt_title').innerHTML = Title.replace(/ /g, '<br />'); } }

中的错误

像这样修改你的.replace,它会起作用

document.getElementById

请注意转义document.getElementById('lyt_title').innerHTML = Title.replace(/\\r?\\n/g, '<br />'); \\r

答案 1 :(得分:0)

尝试使用双反斜杠,一个用于php,一个用于javascript。

 Title.replace(/\\r?\\n/g, '<br />');