我想使用jquery为每行中的不同分数分配分数

3htmauhk  于 2021-06-19  发布在  Mysql
关注(0)|答案(1)|浏览(300)

下面是我的代码

<tbody>
<?php
if($query->rowCount() > 0)
{
  while($row = $query->fetch(PDO::FETCH_ASSOC))
    {
      ?>
<tr class="rows">
    <td class='f_name'><?php echo $row['fullnames']; ?></td>
    <td>
      <input type="text" class='avg' value="<?php echo $row['average']; ?>">
    </td>
    <td><input type='text' class='grade' value=""></td>
</tr>
<?php
     }
 }else {echo "No Records Found";}
?>
</tbody>

我希望每个平均数都有相应的分数。下面是我的javascript代码

$(function(){
    var rw = $('.avg').val();
    var st;
    if(rw >= 80.00 && rw <= 100){st = 'Excellent';}
    else if(rw >= 70.00 && rw <= 79.99){st = 'Very Good';}
    else if(rw >= 60.00 && rw <= 69.99){st = 'Good';}
    else if(rw >= 50.00 && rw <= 59.99){st = 'Credit';}
    else if(rw >= 40.00 && rw <= 49.99){st = 'Passed';}
    else if(rw >= 0.00 && rw <= 39.99){st = 'Failed';}
    else {st = 'No Grade';}
    $('.cposts').val(st);
});

拜托,我做错什么了

m1m5dgzv

m1m5dgzv1#

它以类的所有元素为目标。但您只需要对该行和同一行中相应的元素进行排序。每 <tr> ,我会按行:

$(function() {
  $(".rows").each(function() {
    var rw = $(this).find('.avg').val();
    var st;
    if (rw >= 80.00 && rw <= 100) {
      st = 'Excellent';
    } else if (rw >= 70.00 && rw <= 79.99) {
      st = 'Very Good';
    } else if (rw >= 60.00 && rw <= 69.99) {
      st = 'Good';
    } else if (rw >= 50.00 && rw <= 59.99) {
      st = 'Credit';
    } else if (rw >= 40.00 && rw <= 49.99) {
      st = 'Passed';
    } else if (rw >= 0.00 && rw <= 39.99) {
      st = 'Failed';
    } else {
      st = 'No Grade';
    }
    $(this).find('.cposts').val(st);
  });
});

相关问题