javascript - 使用 js onclick 更改输入类型颜色

标签 javascript css

<script>
function valid() {
    document.getElementById("name").style.borderColor = "#ef0000";
}
</script>

<form method="post" action="">
<input type="text" name="name" id="name">
<input  type="submit" onclick="valid()" value="click">
</form>

为什么这段代码不起作用?我只看到一点红色,边框又回到了初始状态。请大家原谅,真的。我知道它是重复的(我什至在这里找到了至少一个可行的解决方案:http://jsfiddle.net/bcxLz4wh/)我只是想知道我的代码有什么问题以及为什么它返回到初始状态。

最佳答案

它返回到初始状态,因为您单击了提交按钮。它的默认行为是提交刷新页面的 form。如果您只想更改 border-color,则需要覆盖该默认行为。 像这样的东西:

function valid(e) {
    document.getElementById("name").style.borderColor = "#ef0000";
    e.preventDefault();
}


<form method="post" action="">
    <input type="text" name="name" id="name">
    <input type="submit" onclick="valid(event)" value="click">
</form>

关于javascript - 使用 js onclick 更改输入类型颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27412283/

相关文章:

javascript - 使用 ng-repeat 解析不均匀的 data/json 对象

javascript - Vuejs 作为 HTML 模板引擎

javascript - 使用 Javascript 将 "menu bar"div 从 relative 更改为 static

html - 在 iPhone 中, radio 和复选框选项仅适用于双击

javascript - 在选项卡按钮上播放淡入/淡出 slider 单击

javascript - Bootstrap 单选标签不适用于 Knockout

javascript - 基本 JavaScript 练习

javascript - Javascript 中的用户代理解析

javascript - jQuery 选项卡重新加载

javascript - 使用 jQuery 动画幻灯片点击