如何:当输入给文本框时,更改按钮的颜色
How to: Change color of button when an input is given to a textbox
刚学JS就被卡在这里了
我有一个文本框和一个按钮。每当有人在文本框中提供值时,我希望按钮的颜色改变(例如红色)。当文本框保持为空时,按钮的颜色将保持其初始颜色状态。下面是我写的代码::
HTML::
var text1 = document.getElementById("input1");
var butt1 = document.getElementById("button1");
if (text1.value == null || text1.value == "") {
butt1.style.backgroundColor = "white";
}
else {
butt1.style.backgroundColor = "#F22613";
}
#button1 {
height: 20px;
width: 100px;
}
<input type="text" id="input1" value="xyz">
<button type="submit" id="button1">
您需要为textBox
上的事件keyup
附加一个事件侦听器
var text1 = document.getElementById("input1");
var butt1 = document.getElementById("button1");
text1.addEventListener('keyup', function(){
if (text1.value == null || text1.value == "") {
butt1.style.backgroundColor = "white";
}
else {
butt1.style.backgroundColor = "#F22613";
}
});
#button1 {
height: 20px;
width: 100px;
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<input type="text" id="input1" value="xyz">
<button type="submit" id="button1" >
</body>
</html>
我用oninput
创建了函数,它将在输入时验证
function input(){
var text1 = document.getElementById("input1");
var butt1 = document.getElementById("button1");
if (text1.value == null || text1.value == "") {
butt1.style.backgroundColor = "white";
}
else {
butt1.style.backgroundColor = "#F22613";
}
}
#button1 {
height: 20px;
width: 100px;
}
<input type="text" id="input1" value="xyz" oninput="input()">
<button type="submit" id="button1">
<html>
<head>
<title>Enter Press Test</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script type="text/javascript">
window.onload = function(){
var text1 = document.getElementById("input1");
var butt1 = document.getElementById("button1");
text1.addEventListener('keyup', function(){
if (text1.value == null || text1.value == "") {
butt1.style.backgroundColor = "";
}
else {
butt1.style.backgroundColor = "#F22613";
}
});
};
</script>
</head>
<body>
<input type="text" id="input1" value="">
<button type="submit" id="button1">Submit</button>
</body>
</html>
您需要将onChange
属性附加到文本框中并为其分配函数。函数将被调用,每当the value in the textbox is changed
。这是相互依存的链接
或者,您也可以在文本框上指定eventlistener of keyup
。你可以在这个相互依存的链接2中找到解决方案。
function myFunction(){
var text1 = document.getElementById("input1");
var butt1 = document.getElementById("button1");
if (text1.value == null || text1.value == "") {
butt1.style.backgroundColor = "white";
}
else {
butt1.style.backgroundColor = "red";
}
}
#button1 {
height: 20px;
width: 100px;
}
<input type="text" id="input1" value="xyz" onchange="myFunction()">
<button type="submit" id="button1">Something</button>
相关文章:
- 使用event.target.classlist区分按钮颜色
- 如何使用带有多个按钮的javascript更改按钮颜色
- Highcharts上下文按钮颜色
- 在提交时更改按钮颜色,直到输入新文本
- 如何在javascript中更改按钮颜色
- 根据字段值更改页面加载时的按钮颜色
- 我想在单击时更改按钮颜色和文本,并且在刷新页面时它不应该更改
- 单击另一个按钮后如何更改按钮颜色
- 按钮颜色在切换时不会更改多个按钮
- 默认按钮颜色
- 当我使用jQuery Mobile的UI时,如何在jQuery Mobile中切换单击的导航按钮颜色
- 当管理员在管理面板中获得新任务时,如何更改菜单按钮颜色
- 单击时更改按钮颜色
- 无法更改Bootbox中确认框的按钮颜色
- 更改按钮颜色,即使在单击后也是如此
- 根据表中的另一列更改按钮颜色
- 使用addEventListener切换按钮颜色
- AJAX数据库更新与CSS按钮颜色改变使用Codeigniter
- 单选按钮颜色选择器
- 随着背景颜色的变化而改变按钮颜色