Javascript JQuery/Coffeescript unescape变量字符串
因此,我在一个coffeescript文件中有这个jquery块Javascript JQuery/Coffeescript unescape变量字符串,javascript,jquery,coffeescript,escaping,Javascript,Jquery,Coffeescript,Escaping,因此,我在一个coffeescript文件中有这个jquery块 $("#parser-results").append( "<tr><td>" + d.id + "</td>" + "<td>" + d.received_at + "</td>" + "<td>" + d.from_address + "</td>" + "<td>" + d.to_address + "</td>
$("#parser-results").append(
"<tr><td>" + d.id + "</td>" +
"<td>" + d.received_at + "</td>" +
"<td>" + d.from_address + "</td>" +
"<td>" + d.to_address + "</td>" +
"<td>" + d.subject_text + "</td></tr>" +
"<tr><td colspan=5><div class='body-text'>" + d.body_text.replace(/\n/g, "<br />") + "</div></td></tr>"
)
$(“#解析器结果”).append(
“”+d.id+“”+
“”+d.在+“”+
“”+d.从地址+“”+
“”+d.到地址+“”+
“”+d.subject_text+“”+
“+d.body\u text.replace(/\n/g,
)”+”
)
这里的问题与变量d.body\u text
有关,该变量是从数据库检索到的text
字段
我试图用
替换\n
的所有实例,并且我已经尝试了在互联网上找到的每种方法的jquery、javascript和coffeescript变体。在将数据输入数据库之前,我还尝试了preg_replace
和nl2br
,但均无效
此外,数据来自一个名为mailparser.io的邮件解析服务。我怀疑这和那有什么关系,但我真的不确定了
这里少了什么?我需要一些帮助来确定问题可能是什么。根据评论,似乎有人已将(Coffee | Java)脚本中的实际换行符“\n”转换为数据库中的两个字符串
\\\'+'n'
。这将解释为什么:
d.body_text.replace(/\n/g, "<br />")
d.body\u text.replace(/\n/g,“
”)
没有什么有用的东西:没有换行符可以替换为
s,所以,没有什么东西可以替换。解决方案是替换实际存在的内容:
d.body_text.replace(/\\n/g, "<br />")
// ------------------^^^ This gives you a literal \n (as two characters)
d.body\u text.replace(/\\n/g,
)
//-----------------------^^^^这将为您提供一个文本\n(两个字符)
在将数据输入数据库之前,您已尝试使用preg_replace和nl2br添加。您是说原始数据也没有与
一起保存吗?有没有一种方法可以检查原始数据,比如使用phpMyAdmin来确认。。。这里有一个快速调试提示:尝试另一个类似的过程,看看它是否也失败了。与此类似,请尝试替换所有空格(\s),并查看替换方法是否至少有效。它可能会给你一些检查内容的想法。另一个提示:你不需要添加
来获得换行符。只需使用空白:预包装在css中编写>并保留文本。如果要将多个空格收拢为一个空格,请使用前置
。请参见。您能否提供一个示例,说明d.body\u text
的确切外观?你确定你有换行符而不是两个字符吗?@muistooshort你是对的。它们是数据库中的\n
字符。e、 ghey guys\n你好吗?\n
Sod.body\u text.replace(/\\n/g,
)
会给你想要的结果吗?