1,dataTable.Clear()
2,dataTable.Rows.Clear()
1,dataTable.Clear()和dataTable.Rows.Clear() 都是删除全部的表数据,但不会删除表结构(列信息 ),使用时不必做区分,任选其一都可以。
2,DataTable.Reset方法。将全部数据和表结构(列信息)都删除。
3,用DataRow.Delete()方法删除行后,DataTable的行数不会变,在foreach语句中仍然可以遍历到删除的行,但是不能访问行中的值, 会报System.Data.DeletedRowInaccessibleException的异常。
4,DataTable.GetChanges() 方法也可以取到删除后的行,但是也不能访问行中的值,会报异常。
5,DataTable没有显示实现IDisposable接口,对dataTable.Dispose() 的调用实际上是调用的DataTable的一个父类MarshalByValueComponent的 Dispose() 方法,由于这个原因,Dispose() 方法不会清除DataTable的行数据。因此,如果要完全销毁一个DataTable,可以这样写代码:
1 dataTable.Clear()
2 dataTable.Dispose()
3 dataTable = null
JS无法获得网站服务器上保存在内存中的DataTable。但有另外一种途径,DataTable做为数据源输出到页面上之后比如Gridview,成为一个HTML的table。就可以使用JS来遍历这个table了。具体怎么遍历看下边一段
var tableObj = document.getElementById("tableName")
var str = ""
for(var i=0i<tableObj.rows.lengthi++)
{
for(varj=0j<tableObj.rows[i].cells.lengthj++)
{
//str += tableObj.rows[i].cells[j].innerHTML+" "
for(var z=0z<tableObj.rows[i].cells[j].children.lengthz++)
{
var text = tableObj.rows[i].cells[j].children[z]//取得text object
str += text.value
}
}
str+=""n"
}
alert(str)
如果放到HTML是一个table的话,tableObj.rows[i].cells[j].innerText你这样试下CurDT.Rows[0][x]不是HTML的方式
DataTable是asp.net后台的数据类型。js一般会把DataTable转换为json数据,如:[{id:1,name:'s'},{id:2,name:'t'}],每个对象就是一条DataRow。后台多个DataTable 用DataSet去储存和管理,每个DataTable在DataSet里会有一个name数据,把DataSet转成json数据为:{"tab1":{id:1,name:'s'},{id:2,name:'t'},'tab2':[{k:'123'}]}。希望能帮到你。