-1

您好,我正在尝试从多行数据库中获取值。我通常回显该值echo $row['description'];,结果类似于

the new part 3

he is working and prepared to enter the order. 

The witness sees me and talks example in preparation

现在,Unexpected Token Illegal如果我尝试使用 javascript 或 jquery 获取此值,则会导致此问题。如何使这个多行值像普通的 para 或 sentence 一样在单行中。

4

3 回答 3

0

尝试str_replace("\n",' ',$row);

这用空格替换换行符。如果这提供了额外的空间,那就做吧str_replace("\n",'',$row);

于 2013-10-09T19:57:04.120 回答
0

您应该为 Javascript 字符串正确转义:

echo str_replace(['\n', '\r', '\t', "'", '"', '\\'], ['\\n', '\\r', '\\t', "\\'", '\\"'], $row['description']);

您可能应该转义其他字符,但我想我已经介绍了可能在您的字符串中的常见字符。

于 2013-10-09T20:06:55.483 回答
0

这是示例代码:

<?php
function js_escape($str)
{
    $str = str_replace("\\", "\\\\", strval($str));
    $str = str_replace("'", "\\'", $str);
    $str = str_replace("\r", "\\r", $str);
    $str = str_replace("\n", "\\n", $str);
    $str = str_replace("\t", "\\t", $str);
    $str = str_replace("</script>", "</'+'script>", $str);
    return $str;
}
?><script type="text/javascript">
var a = '<?php echo js_escape('text with special symbols'); ?>';
</script>
于 2013-10-09T21:50:56.623 回答