[英]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 值內,而不是相反。 而不是
a
和b
,使用描述性變量名稱來防止這樣的基本錯誤。
在您的代碼中,您正在檢查 admin 值是否具有與用戶值匹配的子字符串或單詞,但在您的問題中,您希望它反過來。 防止這種錯誤的一種簡單方法是仔細檢查變量,或者輸入更具描述性的名稱。 例如,不要使用a
和b
作為變量名,而是使用admin
和user
。
更正的代碼:
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.