精华内容
下载资源
问答
  • - .NET 标题 给DataGrid单元行添加双击事件 hbzxf(原作) 关键字 DataGrid 给DataGrid单元行添加双击事件 hbzxf(阿好) 现在我需要做到的功能是当我单击DataGrid某时显示相对应选中的数据信息,双击此相同行...
    CSDN - 文档中心 - .NET    
    标题    给DataGrid单元行添加双击事件    hbzxf(原作)
    关键字    DataGrid

    给DataGrid单元行添加双击事件

    hbzxf(阿好)

            现在我需要做到的功能是当我单击DataGrid某行时显示相对应选中的数据信息,在双击此相同行时弹出删除对话框,应该怎么做呢。由于单击问题很简单就不再阐述了,下面我说一下双击事件是怎么实现的。

            这里用到了DataGrid的ItemDataBound事件,我们可以把下面的代码加入到所需的程序中就可实现双击的功能。详细源码如下:

    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
      {
       if ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem) || (e.Item.ItemType == ListItemType.SelectedItem) )
       {
        e.Item.Attributes.Add ("ondblclick", "javascript:return confirm('确定删除" + e.Item.Cells[1].Text + "?');");
       }
      }

    其实就是一个小技巧

    展开全文
  • 为了解决此问题,文章从“塔尔博特-普拉窦定律”着手,将光学双稳态特性引入LED显示单元,通过提高个扫描周期内LED显示单元的占空比提高LED显示屏的亮度,研制出了种双双稳态LED显示屏。通过实际测试,证明该...
  • JSP中实现添加一行,删除一行操作

    千次阅读 2010-05-26 15:15:00
     //最后一行插入一行  var newRow = table.insertRow(table.rows.length);  //该行插入单元格  var newCel1 = newRow.insertCell(0);  var newCel2 = newRow.insertCell(1);  var newCel3 = newRow....

    <%@ page language="java" import="java.util.*" pageEncoding="GBK"%>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <SCRIPT type="text/javascript">
    function numberCells()
    {
        var count=0;
        for (i=0; i < document.all.Tab.rows.length; i++)
        {
            for (j=0; j < document.all.Tab.rows(i).cells.length; j++)
            {
                document.all.Tab.rows(i).cells(j).innerText = count;
                count++;
            }
        }
    }

    function tb_addnew()
    {
    var ls_t=document.all("Tab")
    maxcell=ls_t.rows(0).cells.length;
    mynewrow = ls_t.insertRow();
        for(i=0;i <maxcell;i++)
        {
    mynewcell=mynewrow.insertCell();
    mynewcell.innerText="a"+i;

        }
    }

    function tb_delete()
    {
    var ls_t=document.all("Tab");

    ls_t.deleteRow() ;
    }

    </SCRIPT>
    <html>
     <head>
     <script type="text/javascript">
      function addRow(TabId){
      //获取要插入行的表格
      var table = document.getElementById(TabId);
       //在最后一行插入一行
       var newRow = table.insertRow(table.rows.length);
        //在该行插入单元格
        var newCel1 = newRow.insertCell(0);
         var newCel2 = newRow.insertCell(1);
         var newCel3 = newRow.insertCell(2);
         newCel1.innerHTML = "第一列";
         newCel2.innerHTML = "第二列";
         newCel3.innerHTML = "第三列";
         }
         </script>
     </head>
     <body>
      <center>
       <table id="Tab" border="1" cellspacing="0" cellpadding="0">
        <tr>
         <td>
          第一列
         </td>
         <td>
          第二列
         </td>
         <td>
          第三列
         </td>
       </table>
       <br>
       <input type="button" οnclick="addRow('Tab');" value="插入行"/>
       <input type="button" οnclick="tb_delete();" value="删除行"/>
       <input type="button" οnclick="tb_addnew();" value="添加行"/>
       <input type="button" οnclick="numberCells();" value="显示单元个数"/>
       
      </center>
     </body>
    </html>

    展开全文
  • 一行一行写入csv

    千次阅读 2018-07-16 17:28:38
    有时候数据量很大,如果df.to_csv会占用很多内存,因此一行一行写入   import csv out_f = open(df_save_path,'w',newline='') writer = csv.writer(out_f) writer.writerow(lst) out_f.close()...

    有时候数据量很大,如果df.to_csv会占用很多内存,因此一行一行写入

     

    import csv

    out_f = open(df_save_path,'w',newline='')

    writer = csv.writer(out_f)

    writer.writerow(lst)

    out_f.close()

    展开全文
  • 效果: :原始页面

    实现功能:

    通常在编辑表格时表格的行数是不确定的,如果一次增加太多行可能导致页面内容太多,反应变慢;通过此程序实现表格动态增加行,一直保持最下面有多个空白行。

    效果:

    一:原始页面



    二:表1增加新行并绑定timepicker



    三:表2自动增加行,新行绑定timepicker



    源码

    HTML源码:

    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title></title>
        <link href="../Script/jquery-easyui-1.3.2/themes/default/easyui.css" rel="stylesheet" />
        <style>
            .autoRows{
                width: 350px; border:1px green solid;
            }
            .autoRows tbody tr td{
                border-bottom:1px green solid;
                margin:0px;
            }
            .autoRows thead{
                background-color:#8ec7d7;
            }
            .autoRows tfoot {
                background-color: #8ec7d7;
            }
        </style>
    </head>
    <body>
        <table border="0" cellspacing="0" id="table1" class="autoRows">
            <thead>
            <tr>
                <th>表头1</th>
                <th>表头1</th>
                <th>表头1</th>
            </tr>
            <tr>
                <th>表头2</th>
                <th>表头2</th>
                <th>表头2</th>
            </tr>
            </thead>
            <tbody>
            <tr>
                <td>
                    <input id="Button1" type="button" value="insertAfter" οnclick="addrow(this);" /></td>
                <td>
                    <input id="Button3" type="button" value="Clear" οnclick="$.fn.tableAutoRow.clearRowData(this, 2, 2, false);" /></td>
                <td>
                    <input id="Text2" type="text" value="aaaa" /></td>
            </tr>
            <tr>
                <td>
                    <input id="Button2" type="button" value="insertBefore" οnclick="$.fn.tableAutoRow.insertRow(this,1,true,false);" /></td>
                <td>
                    <input id="Button4" type="button" value="Reset" οnclick="$.fn.tableAutoRow.clearRowData(this, 2, 2, true);" /></td>
                <td>
                    <input id="Text1" name="ttt" type="text" value="asdfasfasfdsd" /></td>
            </tr>
            <tr>
                <td>
                    <input id="Button5" type="button" value="insertBefore" οnclick="$.fn.tableAutoRow.insertRow(this,1,true,false);" /></td>
                <td>
                    <input id="Button6" type="button" value="Reset" οnclick="$.fn.tableAutoRow.clearRowData(this, 2, 2, true);" /></td>
                <td>
                    <input id="Text3" type="text" name="Text3" /></td>
            </tr>
            </tbody>
            <tfoot>
                <tr>
                    <th>表尾1</th>
                    <th>表尾2</th>
                    <th>表尾3</th>
                </tr>
            </tfoot>
        </table>
        <div style="height:20px;"></div>
        <table border="0" cellspacing="0" id="table2" class="autoRows">
            <thead>
            <tr>
                <th>表头1</th>
                <th>表头1</th>
                <th>表头1</th>
            </tr>
            <tr>
                <th>表头2</th>
                <th>表头2</th>
                <th>表头2</th>
            </tr>
            </thead>
            <tbody>
            <tr>
                <td>
                    <input id="Button7" type="button" value="insertAfter" οnclick="addrow(this);" /></td>
                <td>
                    <input id="Button8" type="button" value="Clear" οnclick="$.fn.tableAutoRow.clearRowData(this, 2, 2, false);" /></td>
                <td>
                    <input id="Text4" type="text" value="aaaa" /></td>
            </tr>
            <tr>
                <td>
                    <input id="Button9" type="button" value="insertBefore" οnclick="$.fn.tableAutoRow.insertRow(this, 1, true, false);" /></td>
                <td>
                    <input id="Button10" type="button" value="Reset" οnclick="$.fn.tableAutoRow.clearRowData(this, 2, 2, true);" /></td>
                <td>
                    <input id="Text5" name="ttt" type="text" value="asdfasfasfdsd" /></td>
            </tr>
            <tr>
                <td>
                    <input id="Button11" type="button" value="insertBefore" οnclick="$.fn.tableAutoRow.insertRow(this, 1, true, false);" /></td>
                <td>
                    <input id="Button12" type="button" value="Reset" οnclick="$.fn.tableAutoRow.clearRowData(this, 2, 2, true);" /></td>
                <td>
                    <input id="Text6" type="text" name="Text3" /></td>
            </tr>
            </tbody>
            <tfoot>
                <tr>
                    <th>表尾1</th>
                    <th>表尾2</th>
                    <th>表尾3</th>
                </tr>
            </tfoot>
        </table>
    </body>
    </html>
    <script src="../Script/jquery-1.7.2.min.js"></script>
    <script src="../Script/jquery.tableAutoRow.js"></script>
    <script src="../Script/jquery-easyui-1.3.2/jquery.easyui.min.js"></script>
    <script src="../Script/jquery.timepicker.js"></script>
    <script type="text/javascript">
        $(function () {
            $(".autoRows").tableAutoRow(aaa);
            function aaa(row) {
                $(row).find(':text').timepicker();
            }
        });
        function addrow(obj) {
            $.fn.tableAutoRow.insertRow(obj);
        }
    </script>


    JS源码:

    /// <reference path="jquery-1.11.1.min.js" />
    
    
    //为表格主体添加单击事件,当单击时添加行数,使表格保持有n个空行
    (function ($) {
        $.fn.extend({
            tableAutoRow: function (rowfunction) {
                return $(this).each(function () {
                    var tb = this;
                    if (!(this.tagName.toUpperCase() == "TBODY")) {
                        if (!this.tBodies[0]) {
                            return;
                        } else {
                            tb = this.tBodies[0];
                        }
                    }
                    //记录当前行数
                    var rowsCount = tb.rows.length;
                    //添加一个隐藏行,为了避免事件重复绑定,后面新增行复制此行
                    var lastRow = tb.rows[tb.rows.length - 1];
                    if (!$(lastRow).is(":hidden")) {
                        var row = $(lastRow).clone(true, true);
                        $(row).insertAfter($(tb).find("tr:last")).hide();
                    }
                    //绑定事件到行、单元格,单击时添加行
                    $(tb).on('click', 'td,tr', function (e) { autoRows(e, rowfunction); });
                    //绑定事件到input元素,当获取焦点或者单击时添加行
                    $(tb).on('focus', 'input', function (e) { autoRows(e, rowfunction); });
                    //单击第一行,初始化
                    tb.rows[rowsCount - 1].click();
                    //对原有行添加事件
                    if (typeof (rowfunction) == 'function') {
                        for (var i = 0 ; i < rowsCount; i++) {
                            rowfunction(tb.rows[i]);
                        }
                    }
                });
            }
        });
        //自动增加行
        function autoRows(e, rowfunction) {
            var e = e || event;
            var obj = e.target || e.srcElement;
            while (obj.tagName != "TR") {
                obj = obj.parentNode;
            }
            var tb = obj.parentNode;
            var index = $(obj).index();
            var n = 5 - (tb.rows.length - index);
            if (n > 0) {
                var lastRow = tb.rows[tb.rows.length - 1];
                for (var j = 0; j < n; j++) {
                    var row = $(lastRow).clone(true, true);
                    //将新行添加到最后一行之前
                    row.insertBefore($(tb).find("tr:last")).show();
                    //如果有回调函数则执行
                    if (typeof (rowfunction) == 'function') {
                        rowfunction(row);
                    }
                }
            }
        }
    
    
        $.fn.tableAutoRow.deleteRow = function (obj) {
            if (!confirm('确定删除此行?')) {
                return;
            }
            var loop = 0;   //加入循环次数,防止死循环
            while (obj.tagName != "TR" && loop < 10) {
                obj = obj.parentNode;
                loop++;
            }
            if (obj.tagName != "TR") {
                return;
            }
            if (obj.parentNode.rows.length == 2) {
                alert('不能删除全部行');
                return;
            } else {
                $(obj).remove();
            }
        }
    
    
        //在表格中指定位置插入指定行数,新插入的行内容为同一表格主体最后一行
        //obj:行内的任意对象
        //n:要增加的行数
        //isInsertAfter:插入在当前行的后面,否则在前面
        $.fn.tableAutoRow.insertRow = function (obj, n, isInsertAfter) {
            var loop = 0;   //加入循环次数,防止死循环
            while (obj.tagName != "TR" && loop < 10) {
                obj = obj.parentNode;
                loop++;
            }
            if (obj.tagName != "TR") {
                return;
            }
            var tb = obj.parentNode;
            switch (arguments.length) {
                case 2:
                    var isInsertAfter = true;
                case 1:
                    var isInsertAfter = true;
                    var n = 1;
            }
            for (var i = 0; i < n; i++) {
                var lastRow = tb.rows[tb.rows.length - 1];
    
    
                var row = $(lastRow).clone(true, true);
                //将新行添加到当前行之前/后
                if (isInsertAfter) {
                    row.insertAfter(obj).show();
                } else {
                    row.insertBefore(obj).show();
                }
            }
        }
        //清除指定行数据
        //obj为行或者行内的节点
        //startColnum:起始列
        //endColumn:终止列
        //isReset:是否恢复到初始值
        $.fn.tableAutoRow.clearRowData = function (obj, startColnum, endColumn, isReset) {
            var loop = 0;   //加入循环次数,防止死循环
            while (obj.tagName != "TR" && loop < 10) {
                obj = obj.parentNode;
                loop++;
            }
            if (obj.tagName != "TR") {
                return;
            }
            var cellsCount = obj.cells.length;                  //此行单元格总数
            if (startColnum < 0 || !startColnum) {             //如果未指定清除起始列则从第一列清除
                startColnum = 0;
            }
            if (endColumn > cellsCount - 1 || !endColumn) {     //如果未指定清除终止列则清除到最后一列前(通常最后一列用于放置清除按钮)
                endColumn = cellsCount - 1;
            }
            if (isReset == undefined) {
                isReset = false;
            }
            for (var c = startColnum; c <= endColumn; c++)<span style="white-space:pre">		</span>//循环各列,设置单元格里的控件值
            {
                for (var j = 0; j < obj.cells[c].childNodes.length; j++) {  //循环处理指定单元格中的子节点
                    var node = obj.cells[c].childNodes[j];
                    setObjData(node, isReset);
                }
            }
        };
        function setObjData(node, isReset) {
            switch (node.type) {
                case "text":
                case "hidden":
                case "textarea":
                    if (isReset) {
                        node.value = node.defaultValue;
                    } else {
                        node.value = "";
                    }
                    break;
    
    
                case "select-one":
                case "select-multiple":
                    if (isReset) {
                        for (var k = node.options.length - 1; k >= 0; k--) {
                            node.options[k].selected = node.options[k].defaultSelected;
                        }
                    } else {
                        for (var k = node.options.length - 1; k >= 0; k--) {
                            //node.options.remove(k);
                            node.options[k].selected = false;
                        }
                    }
                    break;
                case "checkbox":
                case "radio":
                    if (isReset) {
                        node.checked = node.defaultChecked;
                    } else {
                        node.checked = false;
                    }
                    break;
            }
            if (node.childNodes && node.childNodes.length > 0) {
                var l = node.childNodes.length;
                for (var i = 0; i < l; i++) {
                    setObjData(node.childNodes[i], isReset);
                }
            }
        }
    })(jQuery);
    $(function(){
        $('.autoRows').tableAutoRow();
    });
    


    展开全文
  • SpringBoot之添加单元测试

    万次阅读 2016-11-20 20:39:57
    SpringBoot里添加单元测试是非常简单的件事,我们只需要添加SpringBoot单元测试的依赖jar,然后再添加两个注解就可搞定了。 首先我们来添加单元测试所需要的jar org.springframework.boot spring-boot-...
  • 使用中遇到不少问题,不得已换了种方式写测试用例,写完之后总感觉不太爽。今天Spring官网上学个新的用法,发现这种测试方法使用后没有问题。所以来写一点笔记。 、SpringBoot怎么写单元测试 ...
  • 如何用一行C++代码读写数据库

    万次阅读 2017-08-01 16:48:42
    这篇文章要表达的并非数据库相关的知识,而是如何使用DBIOWrapper。 DBIOWrapper是一个工作Windows下、对ODBC式数据访问进行了小型... 文章标题中《如何用一行C++代码读写数据库》是伪命题,要操作数据库我们通常
  • 表格QTableView单元添加控件

    千次阅读 2018-06-29 17:22:53
    本文主要总结Qt5.9中,用表格类QTableView,表格单元添加控件用法。想要表格QTableView中添加控件,有多种方法,可以参考如下地址:http://qimo601.iteye.com/blog/1538364。其中,我用的是最常用和简单的...
  • 这几天总有人问我关于Web前端设计的作业怎么做呀,有什么代码可以实现啊。 我看了下作业内容,说是...关于如何实现图文在一行分布且图片左侧而文字右侧 <table border="0"> <tr> <td rowspan =...
  • 和保存大概是一样的,但是只能其中的个sheet中添加id值,否则会报错,好像翻译过来是“主键ID重复”,什么primary id忘了是什么提示了,这个问题也想了挺半天,最后联系的客服,之前做过的是用保存按钮点击事件...
  • 最后添加一个删除按钮。点击删除按钮、删除本行! 思路:先一点一点添加功能,先写添加表格,写删除表格 行数: 列数: var row = document.getElementById("textRowId"); var col =...
  • 单元测试实战(

    万次阅读 2019-08-28 18:01:51
    、为什么要做单元测试,以及适用项目 1.回顾 2.价值 3.适用项目 二、UT开展 1.UT计划 2.UT设计 3.UT实现 、为什么要做单元测试,以及适用项目 1.回顾 说明:测试方法中的白盒测试就是本项目的单元测试...
  • JUnit + Mockito 单元测试(

    万次阅读 2015-01-05 11:42:40
    未接触 JUnit 之前,曾经对茫茫的代码不知所措……哪怕是自己写的……多写注释?重构代码?甚至为个方法去写篇技术文章来解释?...于是对所谓测试的东东感觉简直就是在增加工作量——我把代码写漂亮点就了。
  • 如果单元格中输入了很多字符,Excel会因为单元格的宽度不够而没有工作表中显示多出来的部分。如果长文本单元格的右侧是空单元格,那么Excel会继续显示文本的其它内容直到全部内容都显示出来或遇到个非空单元格...
  • VB向图表中添加行标签和列标签,要学会使用图表的话,这是一个最基础的功能了,添加新的行列,就等于图表中添加一个柱状单元,每增加一项需要显示的数据列,就需要添加一个图表单元,因此,本源码例子具有相当好的...
  • 删除选定的MSHFlexGrid控件中的一行

    千次阅读 2013-10-04 17:50:44
    其实就纠结一个问题上,如何点击一个网格,删除选中的Mshflexgrid控件中的一行。  由于对这个控件学生信息管理系统时,学的很生疏,所以又从头学了一遍。  先来看一看常用属性:  AddItem向网格中加入一新...
  • 一行代码——Android pdf

    千次阅读 2018-11-14 18:42:55
    一行代码——Android pdf
  • ,异常背景:JAVA定时任务调用oracle存储过程 第二,异常信息: java.sql.SQLException: ORA-06550: 第 0 , 第 0 列: PLS-00907: 无法加载库单元 SP_XXX (由 引用) 第三,产生原因: 1,无权限调用该...
  • 如果你的Oracle数据库性能...注:翻译行(row)时使用记录来描述(便于理解),如第一行,使用第一条记录。操作系统块的大小是操作系统读写的最小操作单元,也是操作系统文件的属性之一。当创建一个数据库时,选择一个
  • Android 使用 smartTable 表格工具 实现选中一行 并获得行所有信息强力推荐一款 android 自动生成表格框架 smartTable,它有着非常强大的功能,而且日趋完善,能实现很多功能,而且使用也十分简单。简单介绍它的功能...
  • Goole C++ 单元测试框架(

    千次阅读 2017-07-23 11:18:29
    了解Goole C++单元测试框架之前,我们先来明确以下几个问题: 1.什么是单元测试? 单元测试一般由编码人员自己完成,它的目的是隔离程序部件,并证明这些单个部件满足预期的功能。静态程序分析、代码检视之后...
  • InnoDB棵B+树可以存放多少数据?

    千次阅读 2019-07-03 10:20:40
    个问题? InnoDB棵B+树可以存放多少数据?这个问题的简单回答是:约2千万。为什么是这么多呢?...我们都知道计算机存储数据的时候,有最小存储单元,这就好比我们今天进行现金的流通最小单位...
  • 增加的新行就是当前最后一行的克隆行。(这部分代码JS都已实现)。而“提交申请”就是将当前表格中的所有内容提交保存到数据库。**而我要问的是,由JS克隆新增加的行中各个单元格里控件的值如何获取提交?** 附:...
  • //添加一行测试数据,每行就是每一次测试,对应上面定义的input和result,所以这是3次第是,3 row } /** ——————————— | inputR | resultArea| __________________________ | a | 1.0f | 5.0f | ________...
  • c#中如何用ListView实现指定行之后插入新的一行,并且不影响原有行的内容,最后对行号重新排序。
  • 通过header插槽自定义表头...可以通过scope.row.columnName 获取单元项数据进行数据处理: <template slot-scope="scope"> <span :class="1<2 ? 'red-font' : 'blue-font' "> {{formatDate(scope.ro

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 253,566
精华内容 101,426
关键字:

如何在单元行添加一行