我正在研究一种从文本区域输入接收文本的功能,目的是保留换行符。然后,函数将文本作为函数的参数,例如:function get_text(val){ ... }
。从textarea接收的值是:
$('#textarea').val();
例如,单击按钮后,文本区域中的值将传递给get_text()
函数,例如:
$('#button').click(function(){
get_text($('#textarea').val());
});
然后,该函数将使用保留的换行符,因为该值来自文本区域。但是问题出在这里,当我将textarea的值传递给get_text()
函数时,我在控制台中收到一条错误消息,指出:意外的标识符,因为参数已被分割成几行,例如:
如果输入文本为:(第1行)我的(第2行)文本(第3行)是(第4行)此处
该函数接受文本并输出换行符:
get_text("My --- (×)Error appears here
text
is
here");
我正在尝试使用该函数中来自textarea的换行符,该函数会在遇到每个换行符后执行一些任务,因此除非有另一种执行任务的方法,否则摆脱掉换行符不是一种选择。
这里唯一的问题实际上是将文本传递给函数,例如:
get_text($('#textarea').val());
--- should result to ---
get_text('My\ntext\nis\nhere');
--- instead of actually outputting the newlines ---
与该功能配合良好。有没有一种方法可以在不打印换行符的情况下将文本传递给函数,而是将其显示为\ n?
这是get_text函数:
function get_text(val){
let n = /[\n]/;
let i;
let inner = [];
for(i = 0; i < val.length; i++){
inner.push('<span>' + val[i] + '</span>';
if(n.test(val[i] == true){
inner.push('<span class="newline">' + val[i] + '</span>';
}
}
return inner.join("");
}
同样,问题甚至不在函数中,只有当值传递给函数时,它才分成几行……而且不,我没有使用eval
是,只有在从表单中获取错误后,我才会收到错误
<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS94eklaaS5qcGcifQ==” alt =“在此处输入图像描述”>“ >>
我正在研究一种从文本区域输入接收文本的功能,目的是保留换行符。然后,该函数将文本作为该函数的参数,例如:function ...