我无法使用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字符。
知道如何解决这个问题吗?
感谢。
答案 0 :(得分:0)
新行字符前面可能有返回字符('\r'
)。
将'\n'
与'\r\n'
交换,你应该好好去。
甚至更好:只处理新行字符的所有情况,而不是检查应用它的情况。这取代换行符:
htmlstring = stringContainingNewLines.replace(/(\r\n|\n|\r)/gm, "<br>");
希望它有所帮助。