jquery datatable 如何获取隐藏列的值

隐藏的列是自增的主键,我想实现单击表里的行,显示某些数据,$("#operateTabletbodytr").live('click',function(){groupi... 隐藏的列是自增的主键,我想实现单击表里的行,显示某些数据,$("#operateTable tbody tr").live('click', function () { groupid = $(this).children('td').eq(0).html();这样做可以得到不隐藏的列值,但是一隐藏就得不到了,请教大神怎么才能得到隐藏的ID值啊? 展开
 我来答
悠悠4TD0K
推荐于2016-10-13 · 超过26用户采纳过TA的回答
知道答主
回答量:153
采纳率:0%
帮助的人:110万
展开全部
var tableTest; function initTable(){ tableTest = $('#tableTest').dataTable({ "bJQueryUI": true, "sPaginationType": "full_numbers", "aaData": [ ['101', 'aaa', '91,1', '2012-10-10', 'X'], ['102', 'bbb', '92,5', '2012-3-19', 'X'], ['103', 'ccc', '89,5', '2013-3-21', 'X'], ['105', 'eee', '95', '2011-11-11', 'C'], ['104', 'ddd', '91', '2013-2-22', 'X'] ], 'aaSorting':[ [1,'asc'],[2,'asc'] ], 'aoColumns':[ {'sTitle':'ID', 'sWidth':'20%','sClass':'center'}, {'sTitle':'Name', 'sWidth':'20%','sClass':'center'}, {'sTitle':'Score','sWidth':'20%','sClass':'center'}, {'sTitle':'Date', 'sWidth':'20%','sClass':'center'}, {'sTitle':'downLoad', 'sWidth':'20%',"bVisible": false,"bSearchable": false, 'sClass':'center', "mRender": function ( data, type, full ) { return '<input type="text" class="userName" value="'+data+'"/>'; }} ] }); $('#tableTest').find('.userName').each(function(){ console.log($(this).val()); }); }       有两个bVisible和bSearchable,如果设置bVisible:false,那么这列数据是不可访问的,bSearchAble:false是可以访问的,我感觉这边做的不是很好哎,就比方说我们一般都喜欢对表添加一列隐藏列,里面记录每行的id,方便数据访问,但是貌似这招这样不行。我想能不能用mReader来做,就比方上面代码,设置type='hidden',试验发现不行,看来我是明显天真了。但是想到mReader:function(data,type,full)其中的full就是这一列的所有信息,试验了一下,的却访问隐藏的那一列,那么通过这种变相的方法就可以访问隐藏的数据了。      总结一下,可以通过mReader:function(data,type,full)中的full参数获取一行所有信息(包括隐藏列),获取到的是一列字符串,然后通过spilt转换位数组,然后选取第几个。
更多追问追答
追问
我照你说的试了试还是不行,可能是我哪里做的不对。能不能给详细讲讲怎么做啊?多谢了!
我的datatable里aoColumns里的代码是这样的:

"aoColumns": [{ "mData": "id" ,"bVisible": false },//想获取的就是这里的id的值
{ "mData": "name" }] });
追答
你看看我说的visible为flase是获取不到隐藏列的值
herewjz
推荐于2016-11-17 · TA获得超过396个赞
知道小有建树答主
回答量:130
采纳率:100%
帮助的人:117万
展开全部
$('#example').DataTable( {      
"columnDefs": [    
    {    
          "targets": [ 6 ], //隐藏第六列,从第0列开始   
  "visible": false    
    } 
]   
});

这里有所有的api:

http://www.datatables.net/

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3ff9f4f
推荐于2017-12-16 · TA获得超过132个赞
知道答主
回答量:35
采纳率:0%
帮助的人:23.7万
展开全部

楼主,

  1. 你所谓的datatable指的是什么,是指页面上的table控件还是内存的中虚拟表格?

    推测可知是界面上的table控件。

  2. 如果是table控件,那么

    <table>
            <tr>
                <td></td>
                <td style="display: none;"></td>
                <td style="visibility: hidden;"></td>
            </tr>
        </table>

    <script type="text/javascript">
        $(function () {
            var td1 = $("table").find("tr").children("td").eq(1);
            var td2 = $("table").find("tr").children("td").eq(2);
        });
    </script>

    上面的td1和td2都是可以取得td对象的,也就是说在jQuery中,无论这个元素是display:none还是visibility: hidden这两中隐藏方式,都可以被jQuery获取得到。

  3. 因此认为你取不到td的原因可能是:

  • 这个td不是隐藏了,而是在界面上被移除了

  • 你获取的方法有不对的地方

更多追问追答
追问
我说的datatable不是简单的页面上的table。。
追答
那你说的datatable是指什么?通常情况datatable是指内存中虚拟的表格
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
鎏_君黎
2013-09-12
知道答主
回答量:9
采纳率:0%
帮助的人:5.5万
展开全部
隐藏列的值一般情况下是可以获得的,只是不显示在界面上,他的值跟隐藏不隐藏没什么关系
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
潇浪yy
2013-09-12 · 超过23用户采纳过TA的回答
知道答主
回答量:91
采纳率:0%
帮助的人:51.4万
展开全部
这个应该是没有隐藏的行你能点击到,所以就能获得值了,而隐藏了的,在html中并不占据位置,你点击不到,就获取不了值了...你需要解决的是这个问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式