Javascript 使用相对级别位置定位通用命名div属性

Javascript 使用相对级别位置定位通用命名div属性,javascript,jquery,Javascript,Jquery,例如,我有这种div层次结构: <div class="student"> <div class="name">Alex</div> <div class="details"> <div class="status"></div> <div class="score">90</div> </div> <div> <

例如,我有这种div层次结构:

<div class="student">
    <div class="name">Alex</div>
    <div class="details">
         <div class="status"></div>
         <div class="score">90</div>
    </div>
<div>
<div class="student">
    <div class="name">Benny</div>
    <div class="details">
         <div class="status"></div>
         <div class="score">60</div>
    </div>
<div>

但我所拥有的只是这个名为div的泛型类的结构。如果我希望jQuery代码只会导致Alex name变为红色,status变为pass,Benny不会受到影响,但我的出发点是从检测带有分数的div开始?因此,我希望我能够理解如何以score div的兄弟姐妹和父母为目标,而不需要从根开始浏览和循环。我正在寻找类似于
$('.score')。父级
$('.score')。兄弟姐妹('.status')
$('score')。父级.child('.status')
,如果存在的话。我希望jQuery具有这样的特性。但如果没有,请根据您的要求,给出最接近目标相对标记的方式。谢谢。

你需要循环检查所有div,谁的班名是
student
,并用你的及格分数检查孩子的
分数。试试这个

$(".student").each(function(){
    if(parseInt($(this).children(".details").children(".score").text()) > 80){
        $(this).children(".name").css("color", "red");
        $(this).children(".details").children(".status").text("Pass");
    }
});

你需要循环检查所有div,谁的班名是
学生
,并用你的及格分数检查孩子的
分数
div。试试这个

$(".student").each(function(){
    if(parseInt($(this).children(".details").children(".score").text()) > 80){
        $(this).children(".name").css("color", "red");
        $(this).children(".details").children(".status").text("Pass");
    }
});

你需要循环检查所有div,谁的班名是
学生
,并用你的及格分数检查孩子的
分数
div。试试这个

$(".student").each(function(){
    if(parseInt($(this).children(".details").children(".score").text()) > 80){
        $(this).children(".name").css("color", "red");
        $(this).children(".details").children(".status").text("Pass");
    }
});

你需要循环检查所有div,谁的班名是
学生
,并用你的及格分数检查孩子的
分数
div。试试这个

$(".student").each(function(){
    if(parseInt($(this).children(".details").children(".score").text()) > 80){
        $(this).children(".name").css("color", "red");
        $(this).children(".details").children(".status").text("Pass");
    }
});
你可以试试这个

$('.score').each(function(){
  if(parseInt($('.score').text()) > 80) {
    //get parent student div
    var parentDiv = $(this).closest('.student');
    //find name and status div to change property
    $(parentDiv).find('.name').css('color','red');
    $(parentDiv).find('.status').text('Pass');
  }
});
你可以试试这个

$('.score').each(function(){
  if(parseInt($('.score').text()) > 80) {
    //get parent student div
    var parentDiv = $(this).closest('.student');
    //find name and status div to change property
    $(parentDiv).find('.name').css('color','red');
    $(parentDiv).find('.status').text('Pass');
  }
});
你可以试试这个

$('.score').each(function(){
  if(parseInt($('.score').text()) > 80) {
    //get parent student div
    var parentDiv = $(this).closest('.student');
    //find name and status div to change property
    $(parentDiv).find('.name').css('color','red');
    $(parentDiv).find('.status').text('Pass');
  }
});
你可以试试这个

$('.score').each(function(){
  if(parseInt($('.score').text()) > 80) {
    //get parent student div
    var parentDiv = $(this).closest('.student');
    //find name and status div to change property
    $(parentDiv).find('.name').css('color','red');
    $(parentDiv).find('.status').text('Pass');
  }
});
  • 您不能在jQuery选择器的外部使用if(),因为您需要循环使用多个元素
  • 您的选择器应该是
    .score.score
    ,因为实际分数是嵌套的
  • 要在多个选定元素之间循环,可以使用jQuery的“each”
  • 您可以使用“父”和“子”函数在DOM中导航
  • 演示:

  • 您不能在jQuery选择器的外部使用if(),因为您需要循环使用多个元素
  • 您的选择器应该是
    .score.score
    ,因为实际分数是嵌套的
  • 要在多个选定元素之间循环,可以使用jQuery的“each”
  • 您可以使用“父”和“子”函数在DOM中导航
  • 演示:

  • 您不能在jQuery选择器的外部使用if(),因为您需要循环使用多个元素
  • 您的选择器应该是
    .score.score
    ,因为实际分数是嵌套的
  • 要在多个选定元素之间循环,可以使用jQuery的“each”
  • 您可以使用“父”和“子”函数在DOM中导航
  • 演示:

  • 您不能在jQuery选择器的外部使用if(),因为您需要循环使用多个元素
  • 您的选择器应该是
    .score.score
    ,因为实际分数是嵌套的
  • 要在多个选定元素之间循环,可以使用jQuery的“each”
  • 您可以使用“父”和“子”函数在DOM中导航

  • 演示:

    对不起。我刚刚做了快速搜索,发现.parent()确实存在。现在,想想我已经找到了解决方案,忽略这个问题。谢谢,对不起。我刚刚做了快速搜索,发现.parent()确实存在。现在,想想我已经找到了解决方案,忽略这个问题。谢谢,对不起。我刚刚做了快速搜索,发现.parent()确实存在。现在,想想我已经找到了解决方案,忽略这个问题。谢谢,对不起。我刚刚做了快速搜索,发现.parent()确实存在。现在,想想我已经找到了解决方案,忽略这个问题。谢谢,你好。实际上,我在编写代码时犯了一个错误,因为外部的“分数”应该是“细节”。我试图尽快编辑代码,但在我更改代码时,您似乎已经阅读了代码。但没关系,我实际上学到了一些关于.score.score的新东西。非常感谢您展示了这实际上是可能的(两个选择器并排书写,以在另一个选择器中选择一个选择器)。谢谢你的留言。我对这个jQuery有点陌生,这对我帮助很大。顺便说一句,css代码不应该是
    css({'color':'red'})?谢谢。如果您计划设置多个css属性,可以通过如下方式传递一个对象来实现:你好实际上,我在编写代码时犯了一个错误,因为外部的“分数”应该是“细节”。我试图尽快编辑代码,但在我更改代码时,您似乎已经阅读了代码。但没关系,我实际上学到了一些关于.score.score的新东西。非常感谢您展示了这实际上是可能的(两个选择器并排书写,以在另一个选择器中选择一个选择器)。谢谢你的留言。我对这个jQuery有点陌生,这对我帮助很大。顺便说一句,css代码不应该是
    css({'color':'red'})?谢谢。如果您计划设置多个css属性,可以通过如下方式传递一个对象来实现:你好实际上,我在编写代码时犯了一个错误,因为外部的“分数”应该是“细节”。我试图尽快编辑代码,但在我更改代码时,您似乎已经阅读了代码。但没关系,我实际上学到了一些关于.score.score的新东西。非常感谢您展示了这实际上是可能的(两个选择器并排书写,以在另一个选择器中选择一个选择器)。谢谢你的留言。我对这个jQuery有点陌生,这对我帮助很大。顺便说一句,不是吗