动态编辑表格td文本

时间:2015-08-20 21:50:00

标签: javascript jquery html

我有list教授的名字 每个教授'内部',我有一个sublist与他们教的disciplines。一切都来自数据库...
当我扩展教授的学科时,我想填写这些学科的表格 困难的部分是:我需要在合适的时间插入这些学科 每个学科都有ID及其Time 如您所见Here。首先,这个表将是空的,只填充类的时间(例如我只填充了学科)。

如果你检查HTML,你会看到我已经有了教授和 学科ID,data-id=""

在我扩展教授的学科的那一刻,当我开始学习这门学科的时候,我怎样才能将这些学科插入到桌子的正确位置。此外,稍后我需要在相同的TD空间中放置两个或三个学科,就像谷歌的议程一样  我尝试使用JQuery eq(),但我无法使其发挥作用。

更新 这就是我对JQuery.eq()所做的事情:

$( "body" ).find( "table tr td" ).eq( 2 ).addClass( "blue" );  

我能够正确应用该课程,但我如何根据学科的时间选择正确的课程? (时间将从具有其ID的数据库中获取)。

我是否使用Ajax从数据库中获取纪律时间? 当我将子列表填充为自定义属性(例如data-time="")时,是否添加了规则的时间,然后重复使用它来填充表格?
我是否为每一行添加了一些自定义类? 我做了很多IF个陈述吗?

1 个答案:

答案 0 :(得分:1)

令人困惑的是你所要求的。我建议映射标题列名称,因为它更容易引用表格单元格...

var $table = $('#myTable'), cols = getColumnNames();

// use map function to get an array containing column names
function getColumnNames(){  
    var $header = $('thead th', $table);
    return $header.map(function(){ return $(this).text(); }).get();
}

// now easier to get a table cell, by passing the row and column name
function getCell($row, colName){            
    var index = cols.indexOf(colName);
    return $row.find('td:eq(' + index + ')');
}

// loop through rows and choose which cell to process
function loopThroughRows(){ 

    var $row, $cell, $rows = $table.find('tr');

    $rows.each(function(){
        $row  = $(this);
        $cell = getCell($row, 'Segunda-Feira');
        // do stuff with $cell
    });
}