5 回答

TA貢獻(xiàn)1795條經(jīng)驗(yàn) 獲得超7個(gè)贊
我不完全確定你想要什么;這接近您要尋找的嗎?
您可能執(zhí)行了此操作,但沒有將其包含在您的代碼片段中,但我們需要在每次編輯表單時(shí)運(yùn)行它。我們向輸入添加一個(gè)事件偵聽器。
const input = document.getElementById('npo-registration-number');
input.addEventListener('input', () => {
// set the border to red if the value is < 7 characters
if (input.value.length < 7) {
input.style.borderColor = 'red';
return;
}
// otherwise, set it to green
input.style.borderColor = 'green';
});
這解決了一個(gè)問題:除非表單的值是空字符串,否則不要將邊框的顏色設(shè)置為紅色。相反,當(dāng)輸入長度低于 7 時(shí),我們希望邊框?yàn)榧t色。

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超8個(gè)贊
您需要捕獲input
事件,以便 js 可以評(píng)估和更新。?
? ? const ev3 = document.getElementById("npo-registration-number");
? ? ?let flag3 = true;
? ? ?ev3.addEventListener('input', (e) => {
? ? ? ?const val = e.target.value;
? ? ? ?if (val.length === 7){
? ? ? ? ? ? ? ? ev3.style.borderColor = "green";
? ? ? ? ? ? ? ? flag3 = true;? ? ? ? ??
? ? ? ? }
? ? ? ? else {
? ? ? ? ? ?ev3.style.borderColor = "red";
? ? ? ? ? ?flag3 = true;? ?
? ? ? ? }
? ? ?});
input {
? outline: 0;
? border: 1px solid;
}
<input id="npo-registration-number" type='text'>

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超4個(gè)贊
您可以只使用為其運(yùn)行此功能的按鈕,例如send或post按鈕(許多網(wǎng)站使用此方法)。
function click(){
v3 = document.getElementById("npo-registration-number");
flag3 = true;
if (val >= 3 || val == 0) {
if (v3.value == "") {
v3.style.borderColor = "red";
flag3 = false;
}
else if (v3.value.length === 7){
v3.style.borderColor = "green";
flag3 = true;
}
}
}

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超11個(gè)贊
是因?yàn)槟愕臈l件
if (v3.value == "") {
v3.style.borderColor = "red";
flag3 = false;
}
當(dāng)您開始刪除輸入中的字符時(shí),您的輸入不會(huì)再次變?yōu)榧t色,因?yàn)閮H當(dāng)沒有字符時(shí)它才是紅色,并且輸入 7 個(gè)字符后它會(huì)變?yōu)榫G色。

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超10個(gè)贊
請(qǐng)嘗試這個(gè)
v3 = document.getElementById("npo-registration-number");
flag3 = true;
if (v3.value == "") {
v3.style.borderColor = "red";
flag3 = false;
} else {
if (v3.value.length < 7){
v3.style.borderColor = "red";
flag3 = false;
}
else {
v3.style.borderColor = "green";
flag3 = true;
}
}
添加回答
舉報(bào)