Как экспортировать массивные строки Textarea с помощью JavaScript [Duplicate]Html

Программисты Html
Ответить
Anonymous
 Как экспортировать массивные строки Textarea с помощью JavaScript [Duplicate]

Сообщение Anonymous »

Мне нужно сломать контент Textarea для массива строк, поэтому мой код < /p>

2全国各地から厳選された有名焼き芋店やおいもスイーツの専門店が集結し、素材にこだわった極上の焼き芋や多彩なおいもスイーツを楽しめるイベント!


Split Textarea



const getRenderedRows = (lines) => {
// const lines = textareaRef.current.value.split('\n');
const renderedRows = [];
// const canvas = document.createElement('canvas');
// const context = canvas.getContext('2d');
context.font = window.getComputedStyle(textareaRef.current).font;
const textareaWidth = textareaRef.current.clientWidth - 20;
const textareaStyles = window.getComputedStyle(textareaRef.current);
const div = document.getElementById('textForm');
div.style.width = `${textareaRef.current.clientWidth}px`;
div.style.fontSize = `14px`;
div.style.lineHeight = textareaStyles.lineHeight;

lines.forEach(line => {
if (line === '') {
// Handle blank lines
renderedRows.push('');
} else {
let start = 0;
while (start < line.length) {
let end = start;
while (end < line.length) {
const text = line.slice(start, end);
// div.textContent = text;
// console.log(div.clientHeight)
if (div.clientHeight > 21) {
break;
}
end++;
}
renderedRows.push(line.slice(start, end));
start = end;
}
}
});

return renderedRows;
}
function splitTextarea() {
const textarea = document.getElementById("myTextarea");
const text = textarea.value;

// Step 1: Split by hard line breaks (`\n`)
const lines = text.split("\n");
const renderedRows = []
// Step 2: For each paragraph, split into rows based on textarea width
// const rowsArray = [];
const tempElement = document.createElement("div");
tempElement.style.position = "absolute";
// tempElement.style.visibility = "hidden";
tempElement.style.whiteSpace = "pre-wrap"; // Preserve spaces and line breaks
tempElement.style.width = `${textarea.clientWidth}px`; // Match textarea width
tempElement.style.fontFamily = getComputedStyle(textarea).fontFamily; // Match font
tempElement.style.fontSize = getComputedStyle(textarea).fontSize; // Match font size
tempElement.style.lineHeight = getComputedStyle(textarea).lineHeight; // Match line height
document.body.appendChild(tempElement);

lines.forEach(line => {
if (line === '') {
// Handle blank lines
renderedRows.push('');
} else {
let start = 0;
while (start < line.length) {
let end = start;
while (end < line.length) {
const text = line.slice(start, end);
// div.textContent = text;
// console.log(div.clientHeight)
if (tempElement.clientHeight > 21) {
break;
}
end++;
}
renderedRows.push(line.slice(start, end));
start = end;
}
}
});

// Clean up
// document.body.removeChild(tempElement);

console.log("Rows Array:", renderedRows);
return renderedRows;
}

< /code>
Я ожидаю, что он должен вернуть массив содержания каждой строки в Textarea
[2A Коллекция знаменитых запеченных сладостей и специализированных магазинов сладостей со всей страны, и ингредиенты, где событие, где событие, где событие, где событие Вы можете наслаждаться лучшими запеченными сладостями, разнообразными сладостями и сладостями, о которых особые!] Но теперь он возвращается [»2 Коллекция знаменитых запеченных сладостей и сладостей, тщательно отобранных со всей страны, и изысканные запеченные сладости, которые осторожно являются тщательно Выбран из ингредиентов событие, где вы можете наслаждаться разнообразными сладостями! »>

Подробнее здесь: https://stackoverflow.com/questions/794 ... javascript
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Html»