【问题标题】:adding className is not working on a particular field添加 className 不适用于特定字段
【发布时间】:2016-04-17 10:37:39
【问题描述】:

我有一个检查字段是否为空的函数。如果是,它将分配一个将其涂成红色的错误类。它适用于我表单的所有字段,但只有一个字段。 在那个上,它只是将类属性添加到元素中,没有任何值。

这是我的功能

function validateEmptyPass(pass) {
    var a = $('#password-conf');
    var error = "";
    var fieldName;
    if (a[0].value.length === 0) {
        a[0].className ="errorField"
        error= "password field empty"
    } else {
        a[0].className = '';     
    }
    return error;   

这就是元素发生的事情。

<input id="password-conf" name="passwordConf" rel="Password Confirmation" placeholder="password confirmation" type="password" maxlength="25" tabindex="5" class="">

它只是发生在那个领域你知道为什么吗?

非常感谢!

【问题讨论】:

标签: javascript html css classname


【解决方案1】:

由于你使用的是 jQuery,你可以使用 .addClass:

a[0].addClass("errorField");

https://api.jquery.com/addclass/

使用原生 JavaScript:

a[0].classList.add("errorField");

【讨论】:

  • 那会发生什么变化?
【解决方案2】:

一定是不同的东西是错误的。也许你的课? 请向我们展示 CSS 代码。

这是一个有效的代码:

function validateEmptyPass(pass) {
  var a = $('#password-conf');
  var error = "";
  var fieldName;
  if (a[0].value.length === 0) {
    a[0].className = "errorField"
    error = "password field empty"
  } else {
    a[0].className = '';
  }
  return error;
}
.errorField {
  background: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="password-conf" name="passwordConf" rel="Password Confirmation" placeholder="password confirmation" type="password" maxlength="25" tabindex="5" class="">

<input type="button" onclick="validateEmptyPass()" value="validateEmptyPass()" />

【讨论】:

  • 它仍然分配一个空类。
  • @AdrianMojica 当你按下按钮(执行你想要的功能)时,它会改变类,并注意背景如何变成类中定义的红色。
  • 是的,它似乎在这里工作,只要我将它添加到我的代码中,该类就会一直被添加为空:S 必须进行更深入的调试。
  • @AdrianMojica 你有链接吗?
【解决方案3】:

if (!a[0].value) {
        a[0].className ="errorField"
        error= "password field empty"
    } else {
        a[0].className = '';     
    }
 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-04-07
    • 1970-01-01
    • 1970-01-01
    • 2018-10-29
    • 2018-05-28
    • 2023-03-08
    • 1970-01-01
    • 2021-03-14
    相关资源
    最近更新 更多