Javascript 完成时更改文本输入背景,不包括占位符
我想在用户输入一些文本时更改输入的背景颜色,但我的输入也有占位符,我不希望仅更改占位符内容的颜色 如何使用纯Javascript实现这一点Javascript 完成时更改文本输入背景,不包括占位符,javascript,css,Javascript,Css,我想在用户输入一些文本时更改输入的背景颜色,但我的输入也有占位符,我不希望仅更改占位符内容的颜色 如何使用纯Javascript实现这一点 <input type="text" placeholder="Enter your email adress"> if (formInput.length > 0) { formInput[0].style.backgroundColor = "#f9f9f9"; } 如果(formInput.length>0){ form
<input type="text" placeholder="Enter your email adress">
if (formInput.length > 0) {
formInput[0].style.backgroundColor = "#f9f9f9";
}
如果(formInput.length>0){
formInput[0]。style.backgroundColor=“#f9f9f9”;
}
正如您所想象的,即使页面加载时有占位符,也会改变背景颜色 这就是你要找的吗
el=document.getElementById(“电子邮件”);
el.onkeyup=功能(evt){
el.style.background=“红色”;
如果(el.value.length==0)
el.style.background=“无”;
};代码>
这就是你要找的吗
el=document.getElementById(“电子邮件”);
el.onkeyup=功能(evt){
el.style.background=“红色”;
如果(el.value.length==0)
el.style.background=“无”;
};代码>
只需检查输入值:
let input=document.querySelector(“输入”);
addEventListener(“输入”,函数(){
如果(input.value.length>0)
input.style.background=“#ff0000”;
其他的
input.style.background=“无”;
})
只需检查输入值:
let input=document.querySelector(“输入”);
addEventListener(“输入”,函数(){
如果(input.value.length>0)
input.style.background=“#ff0000”;
其他的
input.style.background=“无”;
})
检查输入值的长度。此外,在输入中没有任何内容时重置颜色
(颜色变为红色以更明显)
let input=document.querySelector('input');
addEventListener('input',function(){
this.style.backgroundColor=(this.value.length>0)?'lightcoral':'';
});代码>
检查输入值的长度。此外,在输入中没有任何内容时重置颜色
(颜色变为红色以更明显)
let input=document.querySelector('input');
addEventListener('input',function(){
this.style.backgroundColor=(this.value.length>0)?'lightcoral':'';
});代码>
不会改变颜色吗?会的,OP给出的颜色是浅的。是的,但是当我从输入中删除文本时,背景颜色保持不变。有没有办法在清除输入时重置颜色?@user8993934已更新。没有更改颜色?确实如此,OP提供的颜色是浅的。是的,但当我从输入中删除文本时,背景颜色保持不变。有没有办法在清除输入时重置颜色?@user8993934已更新。您的代码有问题。键入单个字符后,它不会改变颜色,即使删除它,直到再次键入后,它也不会改变颜色。@Highdef corrected:)使用了错误事件!复制/粘贴错误;)是的,就是这样!:)谢谢!:)你的代码有问题。键入单个字符后,它不会改变颜色,即使删除它,直到再次键入后,它也不会改变颜色。@Highdef corrected:)使用了错误事件!复制/粘贴错误;)是的,就是这样!:)谢谢!:)