如何不断检查表单中的更改

时间:2018-01-04 18:13:34

标签: javascript forms

我需要一个代码,当表单中的某些信息发生变化时,例如文本字段中的文本,该按钮会将按钮的颜色更改为灰色(一旦它接收到单击时为绿色)。这将通知用户再次单击该按钮。

我已经尝试了一些代码但没有任何代码

以下是该页面的链接:http://100awesomecraft.com/commands/creations/colored-chest.html

} 

1 个答案:

答案 0 :(得分:1)

如果您想要定位文本框更改,则需要oninput="checkChange()" 如果没有,你只能使用onchange="checkChange()"



var submitButton = document.getElementById('submit');
submitButton.onclick = command;

function command() {
   event.preventDefault();
   submitButton.style.background = 'rgba(92,184,92,1)';
}

function checkChange(){ 
//here you can do what you need, ex change the button color 
  submitButton.style.background = 'rgba(90,90,90,1.0)';
}

<form id="form" oninput="checkChange()" onchange="checkChange()">
  <input type="text" >
  <input type="radio">
  <button id="submit"> Submit </button>
</form>
&#13;
&#13;
&#13;

如果你想通过JS添加事件处理程序,你应该将它们从你的函数中删除 command()

&#13;
&#13;
var submitButton = document.getElementById('submit');
submitButton.onclick = command;

function command() {
   event.preventDefault();
   submitButton.style.background = 'rgba(92,184,92,1)';
}

function checkChange(){ 
//here you can do what you need, ex change the button color 
  submitButton.style.background = 'rgba(90,90,90,1.0)';
}

var form = document.getElementById("form");
form.addEventListener("input", checkChange);
form.addEventListener("change", checkChange);
&#13;
<form id="form">
  <input type="text" >
  <input type="radio">
  <button id="submit"> Submit </button>
</form>
&#13;
&#13;
&#13;