2009-08-31 9 views
0

誰かが数字の入ったテーブルの上に1行追加するように小さなコードを追加する場所を教えてもらえますか?私はただ一つの行を追加する必要がありますが、コードの下には15個のセルが重ねて配置されています。Javascript Javascriptにテーブルを追加するテーブルを生成

$("#myTable tbody").prepend("<tr><td>...contents...</td></tr>"); 

このコードは、どこかに収まるコードです。

私はこれはそれがどこか

<script type="text/javascript"> 

    (function() { 

    var players = { 
     Joop : ["6","8","16","18","26","28","32","36","38","41"], 
     Marijke: ["7","10","14","18","24","29","30","34","39","40"], 
     Michel : ["4","5","11","16","21","27","33","36","42","44"], 
     Mario : ["6","9","18","25","32","35","39","40","43","45"], 
     Diana : ["2","6","8","17","22","23","33","36","42","45"], 
     Agnes : ["3","5","10","15","26","29","32","37","41","44"], 
     Chris : ["5","7","8","9","11","12","16","28","30","32"], 
     Jeannette: ["1","2","4","7","8","11","13","28","30","38"], 
     Wieger: ["1","2","3","7","10","13","14","22","23","27"], 
     Anita: ["6","13","15","17","21","26","32","33","43","45"], 
     Thea: ["1","3","5","7","10","17","19","20","22","38"], 
     Danny: ["3","7","11","15","22","28","32","37","40","43"], 
     Cindy: ["2","4","16","18","21","24","33","38","41","44"], 
     Hanneke: ["1","3","4","12","18","21","25","30","36","40"], 
     Willem: ["3","9","17","21","27","33","35","39","41","42"] 
    }, 

    draws = [ 
     { 
     when: 'Datum: Zaterdag 08-08-2009', 
       picks:[2, 13, 15, 18, 21, 41] 
     }, 

     { 
     when: 'Datum: Zaterdag 15-08-2009', 
      picks:[6, 19, 24, 25, 35, 37] 
     }, 

     { 
     when: 'Datum: Zaterdag 22-08-2009', 
      picks:[8, 17, 23, 26, 37, 42] 
     }, 

    { 
     when: 'Datum: Zaterdag 29-08-2009', 
      picks:[1, 11, 31, 39, 42, 43] 
     } 
    ]; 



    var buildPlayers = function(){ 
     var cont = $("#players"), table = $('<table></table>'); 
     for(player in players){ 
     if (players.hasOwnProperty(player)) { 
      var tr = $('<tr><th>' + player + '</th></tr>').appendTo(table), 
       len = players[player].length; 

      for (var i = 0; i < len; i++) { 
       var td = $('<td/>') 
     td.addClass("loss") 
     .addClass("pick_" + players[player][i]) // add the class to the td 
     .text(players[player][i]) 
     .appendTo (tr); 

     } 


     var winning = $('<td>').addClass('winning-col').appendTo(tr); 

      cont.append(table); 
     } 
     } 
    }; 


    var buildDraws = function(){ 
     var cont = $("#draws"); 
     for(var i = 0; i < draws.length; i++){ 
     var html = ["<div class='draw'>","<h4 class='drawNum'>Trekking "+(i+1) +"</h3></p>","<div class='date'>"+draws[i].when+"</div>","<ol class='picks'>"]; 

     for(var j = 0; j < draws[i].picks.length; j++) { 
      var img = '<img src="http://www.lotto.nl/static/images/ballen/lotto/l' 
     + draws[i].picks[j] 
     + '.jpg" alt="' 
     + draws[i].picks[j] 
     + '" />'; 
      html.push("<li>"+img+"</li>"); 
      showWin(draws[i].picks[j]); 
     } 



     html.push("</ol>","</div>"); 
     cont.append(html.join("")); 
     } 
    }; 

    var showWin = function(winNum){ 
     $(".pick_"+winNum).removeClass("loss").addClass("win"); 
    }; 


    $(function(){ 
     buildPlayers(); 
     buildDraws(); 
     function countWinning() { 
     $('#players table tr').each(function() { 
      var winning = $('td.win', this), total = 0; 
      winning.each(function(i,num) { 
      total+= parseInt($(this).text(), 10); 
      }); 

      $(".winning-col", this) 
     .text($("td.win", this).length) 
     .addClass("hilighted"); 

     }); 
     } 
     countWinning(); 
    }); 


    })(); 

    </script> 
+0

あなたは私たちにマークアップを表示した場合、それはなりprependを使用し物事をずっと簡単にする – karim79

+0

ここはリンクです。 http://www.coldcharlie.nl/lotto/ – Chris

答えて

1

これらはすべて、テーブルの先頭に行を追加します。

insertBeforeの使用:

beforeを使用して
$('<tr><td>Stuff</td></tr>').insertBefore('#players > tbody > tr:first'); 

$('#players > tbody > tr:first').before('<tr><td>Stuff</td></tr>'); 

prependToを使用する:

$("<tr><td>some data</td></tr>").prependTo("#players > tbody"); 
$("#players tbody").prepend("<tr><td>...contents...</td></tr>"); 

テーブルがオンザフライで生成された場合は、例えば、セレクタからtbodyタグを省略しようとする場合があります:

$('<tr><td>Stuff</td></tr>').insertBefore('#players > tr:first'); 
関連する問題