2013-08-04 2 views
0

Я использую jQuery DataTable в моем проекте MVC3. Таблица динамически генерируется с помощью кода позади. Единственное (до сих пор), с которым я сталкиваюсь, - это твой. Я хочу добавить секцию tbody с идентификатором, без каких-либо строк, из кода позади.Добавить tbody через код позади (C#)

Я искал много, и самое лучшее, что я получил это:

TableRow tb = new TableRow(); 
tb.TableSection = TableRowSection.TableBody; 
tb.ID = "Body"; 

Но тот путь, я получаю строку в разделе TBODY, с одной строки с идентификатором .. Что Я хочу получить:

<tbody id="Body"></tbody> 

Как я могу получить этот результат из кода?

Благодаря

ответ

0

я закончил с использованием HtmlGenericControl:

HtmlGenericControl tb = new HtmlGenericControl("tbody"); 
tb.ID = grid.GridBodyName; 

Конечно, таблица itsel f, заголовок, нижний колонтитул и его ячейки также должны быть HtmlGenericControl. Добавление тела к таблице, а ячейки в верхний колонтитул/footer должны выполняться таким образом:

HTMLTable.Controls.Add(tb); 
1

Такая вещь не представляется возможным с общим контролем таблицы, он просто не поддерживает предоставление идентификатора его <tbody>.

Что вы можете сделать, хотя это назначить желаемый идентификатор в качестве пользовательского атрибута таблицы:

Table1.Attributes["data-tbodyid"] = "Body"; 

Затем с помощью JQuery назначить это на лету стола <tbody>:

$(document).ready(function() { 
    $("table").each(function() { 
     var tbodyId = $(this).data("tbodyid"); 
     if (tbodyId && tbodyId.length > 0) 
      $(this).find("tbody").eq(0).attr("id", tbodyId); 
    }); 
}); 
Смежные вопросы