Как ограничить поле текстовой области до 1000 слов в моей форме html - PullRequest
0 голосов
/ 16 июня 2020

Здравствуйте, у меня есть поле обо мне на странице профиля, которую я создал, но заметил, что я не могу копировать и вставлять слова из других документов, даже если моя максимальная длина установлена ​​на 1000 слов. Когда я копирую и вставляю в текстовую область, это занимает около 50 слов. Моя длина в базе данных установлена ​​на 2000. Ниже указано, что у меня есть в моей форме. Мы глубоко признательны за любую предложенную помощь

<div class="form-group">
 <label for="about">About Me</label>
<textarea name="about" rows="3" maxlength="1000" class="form-control" id="about"></textarea>
</div> 

введите описание изображения здесь

Ответы [ 2 ]

0 голосов
/ 16 июня 2020

Атрибут maxlength определяет максимальное количество символов (в единицах кода UTF-16), которое пользователь может ввести в или.

https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/maxlength

Я создал простой пример, когда максимальное количество слов 5:

const input = document.getElementById('textArea');
const textContent = [];
let maxWords = 5;

function separateWords(text, e){
	let words = text.split(" ");
  
	if (words.length >= maxWords + 1) {
  	input.setAttribute('maxLength',words.join(" ").length - 1);
    return words.join(" ").trim();
  } else {
  return words.join(" ");
  }
};

input.addEventListener('input', function()
{
console.log(separateWords(input.value));
});
<div>
<p>
Type something (max 5 words):
</p>
<textarea id="textArea" value=""></textarea>
</div>
0 голосов
/ 16 июня 2020

Тег maxlength определяет максимальное количество characters, а не максимальное количество слов.

Возможно, ваш текст содержит более 1000 символов, поэтому он не работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...