javascript - 如何仅设置数值输入字段的边框颜色?

标签 javascript jquery html

我需要将输入字段的边框颜色设置为绿色,但前提是该字段中的值为数字。我怎样才能做到这一点?这是我的 html:

  <div class="well">
            <input type="text" class="field" value="1245"/><br/><br/>
            <input type="text" class="field" value="efg#21"/><br/><br/>
            <input type="text" class="field" value="34536"/><br/><br/>
            <input type="text" class="field" value="abcd"/><br/><br/>
            <input type="text" class="field" value="12asd"/><br/><br/>
        </div>
    </div>

您能为此建议一个有效的 js/jquery 代码吗?

最佳答案

我会将正则表达式与 jQuery 结合起来。这也会响应用户的输入。

function validate() {
  $("input").each(function () {
    if ($(this).val().match("^[0-9]+$")) {
      $(this).css("border-color","green")
    } else {
      $(this).css("border-color","red")
    }
  });
}

$("input").on("keyup", validate);
validate()
input {
  border-width:1px;
  border-style:solid;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="well">
    <input type="text" class="field" value="1245"/><br/><br/>
    <input type="text" class="field" value="efg#21"/><br/><br/>
    <input type="text" class="field" value="34536"/><br/><br/>
    <input type="text" class="field" value="abcd"/><br/><br/>
    <input type="text" class="field" value="12asd"/><br/><br/>
</div>

关于javascript - 如何仅设置数值输入字段的边框颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43216495/

相关文章:

javascript - 使用 React 调试日志记录

javascript - HTML5 历史 API 实现

javascript - 如何通过具有特定选定值的选择返回 div 中的表?

javascript - 在键盘事件中获取正确的字符

Javascript setInterval 一段时间后变得疯狂

html - 匹配整个文档中某一类型的第一个/第n个元素

html - CSS 响应式卡片

javascript - jQuery 编辑带 id 的链接

javascript - 如何在react-native中编写异步存储值返回函数

php - Laravel CSRF保护下的JQuery AJAX跨站请求