zoukankan      html  css  js  c++  java
  • DataGrid获取当前行某列值

    前言:


    本文将给大家介绍一下, 在ASP.NET MVC环境下,如何利用Jquery MiniUI(一个专业WebUI控件库)来获取Datagrid中的值,官网没有涉及到的内容:如何获取当前行某一列的值?这里配合着console.log()一起来使用教你如何自己寻找未知的属性。(最近发现用console.log()来调试js、Jquery相当好用)

    程序需求:


    需要知道当前选中行的某一列的值,然后选择性的去显示内容。

    我们来看一下官网的API,看着挺好,但是都不适用。

    转变思路:


    一看官网API都没有,就想直接自己调试吧,凭着对Datagridview控件使用的感悟,打算找到table,然后索引出来行、列,大概是这个样子:table.rows[i].cells[j].value 恩恩...

    实际操作:


    1>. 首先载入一个有两行数据的datagrid,并且还要有如下js代码:

    mini.parse();
    var grid = mini.get("datagrid1");
    grid.load();

    function click(){
      console.log(grid);
    }

    2>. 编译运行后,打开我们强大的F12,找到控制台,类比→google的console。

    执行操作后,我们会看到如下内容:

    3>. 这个就是grid显示的内容,如何把里面特定行中的特定列找到呢?在右侧向下拖的时候,我发现了columns,这让我喜出望外,但是展开一看里面的数据才发现,不是我要找的。

    4>. 紧接着,我看到了data,展开一看,原来全藏这了!

    5>. 于是乎,我回到最初的object,找到data:

    6>. 既然找到数据在哪,就得让它显示出来,所以在脚本里添加一句:

    mini.parse();
    var grid = mini.get("datagrid1");
    grid.load();
    
    function click(){
       console.log(grid);
    console.log(grid.data); }

    编译,执行,看效果:

    7>. 我们看到这里显示出来是一个Array数组,看到右边的显示,我们知道,0代表第一行数据,1代表第二行数据,所以我们先将第一行数据显示出来:

    mini.parse();
    var grid = mini.get("datagrid1");
    grid.load();
    
    function click(){
       console.log(grid);
       console.log(grid.data);
       console.log(grid.data[0]);
    }

    编译,执行,看效果:

    8>. 第一行数据全部显示出来了,可以看到所有的key、value,这个时候心里多少有点底了,终于看到希望了,但是还要保持淡定,到现在我们迫切的希望来一个点,就可以索引出所有的属性,只可惜这不是C#,没有相关的类,然后就尝试性去补全这个js后面的代码,手动添加了一个["xmxh"]:

    mini.parse();
    var grid = mini.get("datagrid1");
    grid.load();
    
    function click(){
       console.log(grid);
       console.log(grid.data);
       console.log(grid.data[0]);
       console.log(grid.data[0]["xmxh"]);
    }

    编译、运行、看效果:

    9>. 我们看到相应的数据就显示出来了。我们再结合MiniUI官网API,给出的 获取行索引号、获取当前选中行这两个方法,就可以任何获取datagrid当前行某一列的值了。

    具体实现代码如下:

    mini.parse();
    var grid = mini.get("datagrid1");
    grid.load();
    
    function click(){
         var currentRow = grid.getSelected();
         var row = grid.indexOf(currentRow);
         alert(grid.data[row]["xmxh"]);
    }

    后记:关于MiniUI的使用,现阶段用的最多的就是datagrid,官网的API虽说很简洁(和简单相对应),但是实际开发起来还是需要自己花时间去琢磨研究的,以上内容均为本人测试所得,如果不妥,请留言讨论!

    有你的一天,更美好! 转载请注明出处,http://www.cnblogs.com/kingboat
  • 相关阅读:
    LeetCode153 Find Minimum in Rotated Sorted Array. LeetCode162 Find Peak Element
    LeetCode208 Implement Trie (Prefix Tree). LeetCode211 Add and Search Word
    LeetCode172 Factorial Trailing Zeroes. LeetCode258 Add Digits. LeetCode268 Missing Number
    LeetCode191 Number of 1 Bits. LeetCode231 Power of Two. LeetCode342 Power of Four
    LeetCode225 Implement Stack using Queues
    LeetCode150 Evaluate Reverse Polish Notation
    LeetCode125 Valid Palindrome
    LeetCode128 Longest Consecutive Sequence
    LeetCode124 Binary Tree Maximum Path Sum
    LeetCode123 Best Time to Buy and Sell Stock III
  • 原文地址:https://www.cnblogs.com/kingboat/p/4918392.html
Copyright © 2011-2022 走看看