0

var が 100 未満の場合、tr 要素に .less クラスを追加したいnumberこれまでに行ったことですが、意図したとおりに機能していません。どんな助けでも大歓迎です。

HTML コード:

<table> 
   <thead>
       <tr> 
           <th>RESULT</th>
       </tr> 
   </thead> 
   <tbody>
   </tbody> 
</table>

Jクエリコード:

$(document).ready(function(){
  var number = 80;
  if(number<100){
    $("tbody").append('<tr class="less">');
  }else{
    $("tbody").append('<tr>');
  }        
  $("tbody").append('<td>'+number+'</td>');
  $("tbody").append('</tr>');
});

CSS コード:

tr.less {
  color:red;
}

( codepen で見る)

4

5 に答える 5

1

ではなく、td新しく作成されたに追加する必要がありますtrtbody

$(document).ready(function(){
  var number = 80;
  if(number<100){
    $("tbody").append('<tr class="less" />');
  }else{
    $("tbody").append('<tr />');
  }        
  $("tbody tr").append('<td>'+number+'</td>');
});

デモ

于 2012-09-28T19:55:14.780 に答える
0

正しく追加されていますがtd、テキストが含まれていないため表示されず、開発者ツールを使用すると表示されます

于 2012-09-28T19:57:07.493 に答える
0
$().ready(function() {
  var appendTr = function(threshold) {
    var tr = $('<tr/>').appendTo('tbody');
    if(threshold < 100) {
      tr.addClass('less');
    }
    $('<td/>').appendTo(tr).text('' + threshold);
    return tr;
  };
  var tr = appendTr(80);
})
于 2012-09-28T19:59:04.983 に答える
0

終了タグを間違った要素に追加しようとしています..このアプローチを試してください..

$(document).ready(function(){
  var number = 80;

  $("tbody").append('<tr><td>'+number+'</td></tr>');
   if(number<100){
       $("tbody").find('tr:last').addClass('less')
  }
});​
于 2012-09-28T19:59:59.410 に答える
0

これを試して:

$(document).ready(function(){
    $('<tr><td/></tr>').attr('class', number<100 ? 'less' : '').appendTo('tbody');
});
于 2012-09-28T20:04:51.700 に答える