如果输入值等于特定的字符串添加类

时间:2018-02-13 10:26:14

标签: jquery

我知道有一些与此类似的主题。但那些没有帮助我。 我有这样的HTML:

<span class="wpcf7-list-item first">
 <label>
  <input type="checkbox" name="checkbox-143[]" value="customer service">
  <span class="wpcf7-list-item-label">medicine</span>
 </label>
</span>

现在我有这样的jquery:

$(document).ready(function(){
  if ($("input").val() == "customer service") {
      $(this).addClass("cust-serv");
  }
});

我要做的是在具有特定值时将Class添加到输入中。在这个例子中,这个值是&#34;客户服务&#34;我想添加课程&#34; cust-serv&#34;。

你可以帮帮我吗? THX!

4 个答案:

答案 0 :(得分:2)

  1. 循环浏览所有输入,以便您可以使用上下文this
  2. &#13;
    &#13;
    $("input").each(function() {
      if ($(this).val() == "customer service") {
        $(this).addClass("cust-serv");
      }
    
    
    })
    &#13;
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <span class="wpcf7-list-item first">
     <label>
      <input type="checkbox" name="checkbox-143[]" value="customer service">
      <span class="wpcf7-list-item-label">medicine</span>
    </label>
    </span>
    &#13;
    &#13;
    &#13;

答案 1 :(得分:1)

在您的代码this中没有引用您的输入字段。因此,不要再使用this再次使用"input"

$(document).ready(function(){
  if ($("input").val() == "customer service") {
      $("input").addClass("cust-serv");
  }
});

虽然我建议你使用一些更具体的类作为选择器。

答案 2 :(得分:0)

在你的例子中,&#34;这个&#34;没有链接到您的类,所以替换:

$(this).addClass("cust-serv");

with:

  $("input").addClass("cust-serv");

答案 3 :(得分:0)

只需使用

即可
$(document).ready(function(){ 
$("input").each(function(){
if($(this).val() == "customer service"){
 $(this).addClass("cust-serv"); 
}});
 });