[javascript] 입력 필드에서 특정 문자나 단어의 입력을 제한하는 방법은?

HTML의 입력 필드에서 특정 문자나 단어의 입력을 제한하려면 JavaScript를 사용할 수 있습니다. 예를 들어, 다음은 입력 필드에서 숫자만을 입력할 수 있도록 제한하는 방법입니다.

<input type="text" id="numberInput">

<script>
const numberInput = document.getElementById("numberInput");

numberInput.addEventListener("input", function() {
  const value = numberInput.value;
  numberInput.value = value.replace(/[^\d]/g, "");
});
</script>

위 예제는 numberInput이라는 ID를 가진 입력 필드에서 입력 이벤트가 발생할 때마다 입력된 값에서 숫자가 아닌 문자를 제거합니다. 이를 통해 사용자가 입력할 수 있는 문자가 숫자만으로 제한됩니다.

비슷한 방식으로 특정 단어의 입력을 제한하는 예제도 작성할 수 있습니다. 예를 들어, 다음은 입력 필드에서 “금지”라는 단어가 입력되는 경우 입력을 제한하는 방법입니다.

<input type="text" id="textInput">

<script>
const textInput = document.getElementById("textInput");

textInput.addEventListener("input", function() {
  const value = textInput.value;
  const forbiddenWord = "금지";
  
  if (value.includes(forbiddenWord)) {
    textInput.value = value.replace(forbiddenWord, "");
  }
});
</script>

위 예제에서는 textInput이라는 ID를 가진 입력 필드에서 입력 이벤트가 발생할 때마다 입력된 값에 “금지”라는 단어가 포함되어 있는지 확인하고, 포함되어 있다면 해당 단어를 제거합니다. 이를 통해 사용자는 “금지”라는 단어를 입력할 수 없습니다.

이와 같은 방법을 사용하여 입력 필드에서 특정 문자나 단어의 입력을 제한할 수 있습니다.