2011-12-06 12 views
3

我需要使表的行數等於當月的天數, 任何人都可以幫助我嗎? 我需要創建動態使用jQuery或JavaScript。動態創建的表的行數可變

+3

你能提供一些更多信息請。然後我很樂意回答。在javascript或asp.net中使用 – Christopher

+0

? –

+0

請給我看看你的嘗試.. – Oyeme

回答

4

你可以做這樣的事情:

function daysInMonth(month,year) { 
    return new Date(year, month, 0).getDate(); 
} 


var $table = $('<table>'); 
var $tbody = $('<tbody>'); 

var days= daysInMonth(new Date().getMonth(), new Date().getYear()); 

$table.append($tbody); 
for (i = 1; i<= days; i++){ 
    var $tr = $('<tr>'); 
    var $td = $('<td>'); 
    $td.text(i); 
    $tr.append($td); 
    $tbody.append($tr); 
}; 
$('body').append($table); 

小提琴這裏:http://jsfiddle.net/nicolapeluchetti/WG88Y/

這與行當月的每一天創建一個表。我包括當天的td。

1

只要我們不知道用什麼技術就可以做到這一點。 (純粹的JavaScript,jquery,asp.net webforms,asp.net mvc或其他)我唯一可以說的是。

您可以遍歷DateTime.DaysInMonth(DateTime.Now.Date.Year, DateTime.Now.Date.Month);,其中包含當前月份的天數。

希望這有助於

+0

如果你回答,你應該提供一個完整的答案,這屬於更多的評論,我認爲 –

+0

@NicolaPeluchetti我沒有示例代碼,因爲它不清楚,如果他想在javascript,asp做到這一點。淨webforms,asp.net mvc或其他。但總的來說,你的權利。 – dknaack

1

這是@dknaack的答案的jQuery的一部分:

var genTable = function() { 
    var $table = jQuery("<table />"); 
    // days is equeal to @dhnaack 's answer 
    var days = DateTime.DaysInMonth(DateTime.Now.Date.Year, DateTime.Now.Date.Month); 
    jQuery(days).each(function(i,e) { 
    var $tr = jQuery("<tr />"); 
    var $tr = jQuery("<td />") 
    $table.append($tr.append($td)); 
    }); 
    return $table; 
} 

那麼你可以使用它像這樣:

jQuery("body").append(genTable());