如何获取datatable的某个值?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何获取datatable的某个值?相关的知识,希望对你有一定的参考价值。

以前从数据库获取数据,都是使用datareader来进行返回,但是发现有些不好,现在我想学习一下使用datatable来读取数据库,返回一个datatable,但是,返回的这个datatable类型的数据,如何才能转换输出成我需要的很多的string数据?最好有个简单的把类型datatable分解成string的例子。

首先你要确定你的DataTable 里面是有数据的

我不知道你的 Table里面是什么样的数据··ItemArray 返回 object [] 数组

你拿一个object 数组 去 Convert.toInt32()
你不报错我到觉得奇怪了 ··
如果是业务需要··那就要另外来写 toInt32() 对你的需要行不通
他只返回一个数字 而不是 int数组!

一般拿个Convert.toInt32(dt.Rows[1][2]) 就是这样了!
参考技术A dataset 是datatable的集合
dataset ds=new dataset();
ds.tables[0];依次类推可以获取你的表,不过一般会给表一个名字在引用会方便点。

如 sqldataadapter sda=new sqldataadapter("T-SQL",conn);
dataset ds=new dataset();
sda.fill(ds,"table"); //这里是在ds里新建了一个表,叫table,注意是新建,多次执行会报错,实际使用时,可以用contain来判断是否存在同名的表
ds.tables["table"];

取数据的话,有几种方式
ds.Tables[0].Rows[0]["列名"].ToString(); //0那里那里可用循环改变,即可以rows[i]

ds.Tables[0].Columns[0].ToString();
ds.Tables[0].Columns["列名"].ToString();
参考技术B Convert.ToInt32(dt.Rows[1].ItemArray[2])

行标是从0开始的,也就是Rows[0]表示第一行。
参考技术C 如,获取第2行第3列的值:
1string value = dataTable1.Rows[1][2].ToString();
注意,datatable 是以0为起始行/列

jquerydatatable 获取隐藏列

jquery datatable 中有一列ID已经隐藏,现在我想获取隐藏列的值,应该怎么获取呢

不太熟悉这个插件。但是我想你可以写一个function来解决这个问题:
1.不要使用aoColumnDefs来隐藏相关的列。
2.写个function(最好是写成jq的扩展方法),功能很简单,参数为列索引,遍历该表格所有行,将你传入列的td的值作为属性添加到该tr上,并隐藏该TD。这样遍历一遍后,你需要隐藏的那列的所有的值都会作为TR的一个属性存在了。
3.你需要获得该隐藏列的值的时候,直接访问TR的某个属性就可以了。

可以用数组,或者任何的东西来记录你需要隐藏的列的值,取的时候获得表格行号,根据索引去数组里取也成。
-------------------------------------------------------------
刚粗略查了一下这个插件,发现有个aoColumn中有个fnRender属性,可以对列进行渲染,比如你想进行"查看详细","修改","删除"等操作都可以用这种方法追问

哥们儿,咱能不懒么,你这儿从哪里COPY来的。

参考技术A 隐藏了,也能呢个取的 $("ID").val()本回答被提问者采纳

以上是关于如何获取datatable的某个值?的主要内容,如果未能解决你的问题,请参考以下文章

怎么获取DataTable中某一字段的值

前端,Javascript中dataTable中,如何获取datatable中的columns的各项key:value值

DataTable:如何使用行名和列名获取项目值? (五)

jquerydatatable 获取隐藏列

如果名称包含点,如何在 dataTables 列初始化中获取 JSON 对象值?

如何从dataTable行集合中获取复选框输入值?