簡體   English   中英

使用Javascript檢查字符串是否包含HTML中的單詞或子字符串

[英]Check if String Contains a word or Substring in HTML using Javascript

我試圖獲取我的 admin textarea 的值並檢查用戶的 textarea 是否具有與 admin 值匹配的子字符串或單詞,當用戶輸入 1 個單詞並匹配 admin 時,它會說正確,但是當用戶輸入一個句子時管理中的正確詞會說錯誤而不是正確的,你能幫忙嗎

 var a = document.getElementById('admin'); var b = document.getElementById('user'); function sample() { if (a.value.includes(b.value)) { document.getElementById('output').innerHTML = "USER INPUT WITH KEYWORD"; } else { document.getElementById('output').innerHTML = "USER INPUT WITHOUT KEYWORD"; } }
 <textarea id="admin" placeholder="admin"></textarea> <textarea id="user" placeholder="user"></textarea> <textarea id="output"></textarea> <button style="height: 50px; width: 100px;" onclick="sample()"> </buttom>

正如@Chris G 所說,

您的代碼正在檢查用戶值是否在 admin 值內,而不是相反。 而不是ab ,使用描述性變量名稱來防止這樣的基本錯誤。

在您的代碼中,您正在檢查 admin 值是否具有與用戶值匹配的子字符串或單詞,但在您的問題中,您希望它反過來。 防止這種錯誤的一種簡單方法是仔細檢查變量,或者輸入更具描述性的名稱。 例如,不要使用ab作為變量名,而是使用adminuser
更正的代碼:

var a = document.getElementById('admin');
var b = document.getElementById('user');

function sample() {
  if (b.value.includes(a.value)) {
    document.getElementById('output').innerHTML = "USER INPUT WITH KEYWORD";
  } else {
    document.getElementById('output').innerHTML = "USER INPUT WITHOUT KEYWORD";
  }
}

使用更好的實踐更正代碼:

var admin = document.getElementById('admin');
var user = document.getElementById('user');

function sample() {
  if (user.value.includes(admin.value)) {
    document.getElementById('output').innerHTML = "USER INPUT WITH KEYWORD";
  } else {
    document.getElementById('output').innerHTML = "USER INPUT WITHOUT KEYWORD";
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM