我在MVC3项目中使用jquery DataTable。该表是通过代码隐藏生成的。我遇到麻烦的唯一(到目前为止)是tbody。 我想在后面的代码中添加一个带有ID的tbody部分,没有任何行。
我一直在寻找,我得到的最好的事情是:
TableRow tb = new TableRow();
tb.TableSection = TableRowSection.TableBody;
tb.ID = "Body";
但是那样,我在tbody部分得到一行,其中一行带有id .. 我想得到的是:
<tbody id="Body"></tbody>
如何从代码中获取结果?
由于
答案 0 :(得分:1)
使用通用Table控件是不可能的,它只是不支持为其<tbody>
提供ID。
您可以做的是将所需的ID指定为表格的自定义属性:
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);
});
});
答案 1 :(得分:0)
我最终使用了HtmlGenericControl:
HtmlGenericControl tb = new HtmlGenericControl("tbody");
tb.ID = grid.GridBodyName;
当然,表本身,页眉,页脚及其单元格也应该是HtmlGenericControl。 将主体添加到表中,将单元格添加到header \ footer应该这样做:
HTMLTable.Controls.Add(tb);