【发布时间】:2021-07-29 01:48:09
【问题描述】:
我在作业方面需要帮助: 当用户填写文本字段并且文本字段失去焦点时,将文本字段设为绿色并带有复选标记。您可以使用 FontAwesome 的复选标记。 当用户不填写文本字段,但移除焦点时,用十字将文本字段变为红色 我需要 javascript/dom 代码来完成这项任务。 我试过这段代码但不起作用:
let fields = document.getElementsByTagName("input");
const checkFields = function () {
for (let i = 0; i < fields.length; i++) {
if (fields[i].value == "") {
fields[i].style.backgroundColor = "red";
} else {
fields[i].style.backgroundColor = "green";
}
}
}
fields.addEventListener('change', checkFields)
<div class="controls">
<input
autofocus=""
class="input-xlarge"
id="company"
name="company"
placeholder="Company name"
type="text"
value=""
/>
</div>
</section>
<section class="control-group">
<label class="control-label" for="fname">Name</label>
<div class="controls two-col">
<input
class="input-medium"
id="fname"
name="fname"
placeholder="First name"
type="text"
value=""
/>
</div>
<div class="controls two-col">
<input
class="input-medium"
id="lname"
name="lname"
placeholder="Last name"
type="text"
value=""
/>
</div>
</section>
<section class="control-group">
<label class="control-label" for="email">Email</label>
<div class="controls">
<input
class="input-xlarge"
id="email"
name="email"
placeholder="Email"
type="email"
value=""
/>
</div>
</section>
【问题讨论】:
-
请分享你试过的JS代码。
-
让 fields = document.getElementsByTagName("input"); const checkFields = function () { for (let i = 0; i
标签: javascript css dom