【问题标题】:find out if all images have class找出所有图像是否都有类
【发布时间】:2013-12-10 11:55:28
【问题描述】:

HTML:

<div class="regform"><input id="username" type="text" name="username" placeholder="Username" required><h3 class="check"><img src=''/></h3></div>
<div class="regform"><input id="password" type="password" name="password" placeholder="Password" required><h3 class="check"><img src=''/></h3></div>
<div class="regform"><input id="password2" type="password" name="password2" placeholder="Re password" required><h3 class="check"><img src=''/></h3></div>
<div class="regform"><input id="email" type="text" name="email" placeholder="E-mail" required><h3 class="check"><img src=''/></h3></div>

JS:

        $('#send').click(function(){
    var classs = $(".check").find('img');
    if(classs.hasClass("yes")){
        alert("Everything is correct");
    }else{
        alert("Something is wrong");
    }

});

我想检查一下,如果所有“.check”图像都有“yes”类。

【问题讨论】:

  • 在您的 HTML 中,没有图像具有 yes 类。这是故意的吗?

标签: javascript jquery html css class


【解决方案1】:
var dotheyallhavetheclass = $('.check img:not(.yes)').length===0;

【讨论】:

    【解决方案2】:

    .......或......

    var dotheyallhaveyesclass = (($('img.check').length == $('img.yes').length)) ? 1 : 0);
    

    【讨论】:

    • 这会考虑具有checkyes所有 元素,即使是那些不相关的元素,例如&lt;div class="yes"&gt;Not relevant&lt;/div&gt;
    • 根据 OP 的 HTML,没有不相关的 .yes 元素。但如果有帮助,我会修改我的答案。
    • 你说得对,只是我在吹毛求疵。不幸的是,HTML 和问题不同意。结构似乎是.check img/.check img.yes,而不是img.check
    • @OlafDietsche 是的,我注意到了。由于他的标记和他的问题不相关,因此无论他选择哪种解决方案,我担心他可能会遇到问题。
    【解决方案3】:

    这是纯 Javascript 解决方案:以下演示:http://jsbin.com/ucoPEBEv/1/

    e = document.getElementsByClassName('check');
    error = false;
    for (j = 0; j < e.length; j++){
       imgs = e[j].getElementsByTagName('img');    
          for (i = 0; i < imgs.length; i++){
              if (imgs[i].className != 'yes'){
                 error = true;
                 break; 
               } 
          }
      }
    if (error){
          alert('Some Thing Wrong');
        }
    else{
          alert('Every Thing Well!');
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-10
      • 1970-01-01
      • 2020-12-02
      • 2016-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多