как выделить слова, которые являются недопустимыми при вводе данных пользователем - PullRequest
0 голосов
/ 21 июня 2019

как выделить только слова , которые являются недопустимыми во входных данных, предоставленных пользователем, где я могу сделать свою собственную функцию проверки недействительности. например привет это очень хорошо и очень приятно предположим, что это ввод пользователя, и я хочу выделить «очень» и «это» или любое другое пользовательское слово.

Я пытался поместить html-тег в значение, но html не анализирует внутренний атрибут-атрибут входного тега.

Ответы [ 2 ]

0 голосов
/ 21 июня 2019

Вы не можете просто поместить html-теги во входные данные.Чтобы включить возможности «расширенного текста», вам нужно использовать атрибут contenteditable HTML , например ...

const words = [/(very)/gi, /(nice)/gi]
const highlightInput = () => {
	const richInput = document.getElementById('rich-input')
	let text = richInput.innerText

	words.forEach(x => {
		text = text.replace(x, '<span class="highlighted">$1</span>')
	})
	
	richInput.innerHTML = text
}

document.getElementById('highlight').addEventListener('click', highlightInput)
#rich-input{
  border:1px solid #000;
  padding: 5px;
}

.highlighted{
  color:red;
  text-decoration:underline;
}
<div>
  <input type="button" value="Highlight!" id="highlight" />
</div>

<label>Enter your text below:</label>
<div id="rich-input" contenteditable="true">Hello this is very good and very nice</div>
0 голосов
/ 21 июня 2019

Попробуйте использовать variable.split () при чтении ввода. Сохраните его в массиве, используя цикл, проверьте наличие ошибок и выделите

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