我有一个带有提交按钮的表单,想要在点击时更改按钮的颜色。
我在HTML中试过这个:
const myButton = document.getElementById("submitButton");
myButton.addEventListener("submit", function() {
myButton.style = "background:blue"
})

<div>
<form id="connexion">
<input type="text" placeholder="Pseudo" />
<button id="submitButton" type="submit" value="Go" style="background:yellow"></button>
</form>
</div>
&#13;
它不起作用。 你能告诉我问题出在哪里吗? 感谢
答案 0 :(得分:1)
将submit
更改为click
或将eventListener添加到表单中。这里有表单上的eventListener:
const myButton = document.getElementById('submitButton');
const myForm = document.getElementById('connexion');
myForm.addEventListener('submit', function(e) {
e.preventDefault();
myButton.style = 'background:blue';
})
&#13;
<div>
<form id="connexion">
<input type="text" placeholder="Pseudo" />
<button id="submitButton" style="background:yellow">Go</button>
</form>
</div>
&#13;
答案 1 :(得分:1)
根据zzzzBov的评论:按钮没有submit
事件。
使用event.preventDefault();
提交表单时,您需要阻止默认表单操作。并使用按钮ID设置样式background-color
:
document.getElementById("submitButton").style = "background: blue;";
您可以使用表单ID执行submit
事件。
这样的事情:
const connexion = document.getElementById("connexion");
connexion.addEventListener("submit", function(e) {
e.preventDefault();
document.getElementById("submitButton").style = "background: blue;";
});
&#13;
<form id="connexion">
<input type="text" placeholder="Pseudo" />
<button id="submitButton" type="submit" style="background: yellow;">Go</button>
</form>
&#13;
答案 2 :(得分:1)
按钮没有提交的事件尝试使用click
代替:
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Test</title>
</head>
<body>
<div>
<form id="connexion" >
<input type="text" placeholder="Pseudo" />
<input id="submitButton" type="button" value="Go" style="background:yellow"></button>
</form>
</div>
<script type="text/javascript" src="main.js"></script>
</body>
</html>
和jquery:
$(document).ready({
$("#submitButton").click(function(){
$(this).css({
"background-color":"blue"
});
});
});