Javascript 如何截断textarea中的多行?
我正在尝试创建一个2文本区域工具,其中我在1个文本区域中输入多达300行的文本,它删除除前5个字符以外的所有字符,并在第二个文本区域中仅吐出这5个字符 请原谅我失败的尝试。我知道我的代码到处都是。我尝试了多种方法来实现这一点。我相信forloop是最好的,但我无法使用。子字符串Javascript 如何截断textarea中的多行?,javascript,substring,textarea,Javascript,Substring,Textarea,我正在尝试创建一个2文本区域工具,其中我在1个文本区域中输入多达300行的文本,它删除除前5个字符以外的所有字符,并在第二个文本区域中仅吐出这5个字符 请原谅我失败的尝试。我知道我的代码到处都是。我尝试了多种方法来实现这一点。我相信forloop是最好的,但我无法使用。子字符串 function lineParse() { var parseBoxList = document.getElementById("parsebox").value; var nodeLength = 5; var t
function lineParse() {
var parseBoxList = document.getElementById("parsebox").value;
var nodeLength = 5;
var trimFat = parseBoxList.substring(0, nodeLength);
var text = document.getElementById("parsebox").value;
var lines = text.split('/n');
var cut = lines.substring(0, 5);
var count = lines.length;
var x = document.getElementById("parsebox").value;
var text2 = "";
var i;
var parseLength = 5;
for (i = 0; i < lines.length; i++) {
var text3 = text2;
text2 += lines[i];
}
document.getElementById("demo").innerHTML = cut;
函数lineParse(){
var parseBoxList=document.getElementById(“parsebox”).value;
变量节点长度=5;
var trimFat=parseBoxList.substring(0,节点长度);
var text=document.getElementById(“parsebox”).value;
变量行=text.split('/n');
var cut=行。子字符串(0,5);
变量计数=行数。长度;
var x=document.getElementById(“parsebox”).value;
var text2=“”;
var i;
var-parseLength=5;
对于(i=0;i
什么都没有发生您应该能够通过以下代码实现所需的功能: HTML
这是一条线
这是一条线
这是一条线
这是一条线
这是一条线
执行
JS
功能测试(){
//按换行符拆分文本区域值
变量行=document.getElementById(“textarea1”).value.split(“\n”);
var newText=“”;
//在文本区域行数组和子字符串上循环以获得前5个字符
对于(变量i=0;i
您应该能够通过以下代码实现所需的功能: HTML
这是一条线
这是一条线
这是一条线
这是一条线
这是一条线
执行
JS
功能测试(){
//按换行符拆分文本区域值
变量行=document.getElementById(“textarea1”).value.split(“\n”);
var newText=“”;
//在文本区域行数组和子字符串上循环以获得前5个字符
对于(变量i=0;i
您没有使用正确的分隔符。换行符不是/n。您是否尝试过使用
文本溢出:省略号样式?正如名称所示,子字符串必须用于字符串,因此在数组中使用它将不起作用。我是否遗漏了什么,或者这是您试图实现的吗?@jakobson接近我想要做的,but我想让它创建一个数组,切片数组并分割每一行,因此假设我有一个文本区域,其中有10行文本,长度为40个字符。我需要在所有40行中的前5个字符在第二个文本区域中吐出。您没有使用正确的分隔符。换行符\n不是/n。您是否尝试使用文本溢出:省略号
style?正如名字所说,必须在字符串上使用子字符串,因此在数组中使用它是行不通的。我是否遗漏了什么,或者这就是你想要实现的吗?@JakoBasson接近我想要做的,但我希望它创建一个数组,对数组进行切片,并拆分每一行,这样我就有一个包含10行文本的文本区域这是40个字符长我需要所有40行的前5个字符吐出在第二个文本区域
<textarea id="textarea1">
this1 is a line
this2 is a line
this3 is a line
this4 is a line
this5 is a line
</textarea>
<textarea id="textarea2"></textarea>
<button id="execute">Execute</button>
function test() {
// split text area value by newline
var lines = document.getElementById("textarea1").value.split("\n");
var newText = "";
// loop over text area line array and substring each to get the first 5 characters
for (var i = 0; i < lines.length; i++) {
var line = lines[i];
newText += line.substring(0, 5) + "\n";
}
// set values to newText variable
document.getElementById("textarea2").value = newText;
document.getElementById("textarea1").value = newText;
}
document.getElementById("execute").addEventListener('click', test);