Javascript 更改输入字段颜色(如果已填充)
我有一个带有Javascript 更改输入字段颜色(如果已填充),javascript,html,css,forms,Javascript,Html,Css,Forms,我有一个带有输入元素的表单: <form method="POST" action="User.do"> <div id="buddy-form-group"> <input type="text" class="form-control form-input-field form-interests-input-field" name="interests"
输入元素的表单:
<form method="POST" action="User.do">
<div id="buddy-form-group">
<input type="text"
class="form-control form-input-field form-interests-input-field"
name="interests"
onchange="checkFilled()">
</div>
<br/><br/><button class="btn btn-success" type="submit">Send</button>
</form>
问题是,如果至少有一个字段得到字段,则所有字段的颜色都会变为绿色。一旦它们变为绿色,它就不会变为红色,即使我删除了所有输入。我怀疑脚本将green color属性放在类上,而不是单个元素上。修复它的最佳方法是什么?以下类似的方法应该可以工作:
<script>
function checkFilled() {
var interests = document.getElementsByClassName("form-interests-input-field");
for (var i = 0; i<interests.length; i++) {
if (interests[i].value == '') {
interests[i].style.backgroundColor = 'red';
} else {
interests[i].style.backgroundColor = 'green';
}
}
}
</script>
<form>
<div id="buddy-form-group">
<input type="text"
class="form-control form-input-field form-interests-input-field"
name="interests"
onkeyup="checkFilled()">
</div>
<br/><br/>
<button class="btn btn-success" onclick="checkFilled()" type="button">Send</button>
</form>
函数checkFilled(){
var利息=document.getElementsByClassName(“表单利息输入字段”);
对于(var i=0;如果
statement@Aaron加顿谢谢你!现在我觉得自己很傻。你可以把它作为答案发布,或者我可以删除一个问题。哈哈,常见的错误;)
<script>
function checkFilled() {
var interests = document.getElementsByClassName("form-interests-input-field");
for (var i = 0; i<interests.length; i++) {
if (interests[i].value == '') {
interests[i].style.backgroundColor = 'red';
} else {
interests[i].style.backgroundColor = 'green';
}
}
}
</script>
<form>
<div id="buddy-form-group">
<input type="text"
class="form-control form-input-field form-interests-input-field"
name="interests"
onkeyup="checkFilled()">
</div>
<br/><br/>
<button class="btn btn-success" onclick="checkFilled()" type="button">Send</button>
</form>