Javascript 换行符抛出错误
Javascript Newline Character Throwing Error
我无法使用 javascript 从文本框中获取一些数据。我想要做的是从文本框中获取值并将其放入警报中并复制它。这是我目前拥有的代码:
var copyString = "Date: <%= TXT_Details_DateReq.Text %>;
window.prompt('Press CTRL+C, then ENTER\n\nNOTE: SAVE ANY CHANGES BEFORE COPYING TEXT!', copyString); return false;
因此,如果文本框中的文本只有一行,则此代码可以完美运行。但是如果文本框中的文本有多行如:
"This is one line
here is a second line"
代码将抛出错误 Uncaught Syntax Error: Unexpected Token ILLEGAL
。
根据我的研究,当存在非法字符时会抛出此异常,因此我相信它是文本框中的 CRLF 字符。
知道如何解决这个问题吗?
谢谢。
新行字符前面可能有 return 个字符 ('\r'
)。
将 '\n'
与 '\r\n'
交换,您就可以开始了。
甚至更好:只处理换行符的所有情况,而不是检查是哪种情况然后应用它。这将替换换行符:
htmlstring = stringContainingNewLines.replace(/(\r\n|\n|\r)/gm, "<br>");
Resource
希望对您有所帮助。
我无法使用 javascript 从文本框中获取一些数据。我想要做的是从文本框中获取值并将其放入警报中并复制它。这是我目前拥有的代码:
var copyString = "Date: <%= TXT_Details_DateReq.Text %>;
window.prompt('Press CTRL+C, then ENTER\n\nNOTE: SAVE ANY CHANGES BEFORE COPYING TEXT!', copyString); return false;
因此,如果文本框中的文本只有一行,则此代码可以完美运行。但是如果文本框中的文本有多行如:
"This is one line
here is a second line"
代码将抛出错误 Uncaught Syntax Error: Unexpected Token ILLEGAL
。
根据我的研究,当存在非法字符时会抛出此异常,因此我相信它是文本框中的 CRLF 字符。
知道如何解决这个问题吗?
谢谢。
新行字符前面可能有 return 个字符 ('\r'
)。
将 '\n'
与 '\r\n'
交换,您就可以开始了。
甚至更好:只处理换行符的所有情况,而不是检查是哪种情况然后应用它。这将替换换行符:
htmlstring = stringContainingNewLines.replace(/(\r\n|\n|\r)/gm, "<br>");
Resource
希望对您有所帮助。