HTML部分

   <table style="width: 100%;" id="TABYESTERDAY11"></table>
<input id="TABYESTERDAY11ADD" class="button white" type="button" value="添加一行" />

JS部分

     <script type="text/javascript">
      //昨日施工-电力
var shifttable11 = function () {
this.tableobj;
          //初始化一张表
this.init = function (datas, obj) {
var strs = [];
this.tableobj = obj;
var base = this;
for (var i = 0; i < datas.length; i++) {
strs.push('<tr><td style="width:30px"><a href=\'#\' style="padding-left:10px" class="operate_delete" title="删除" ></a></td>');
strs.push('<td><input type="text" class="inputvalue" style="width:99%;" value="' + (datas[i] || '') + '"/></td>');
strs.push('</tr>');
}
obj.append(strs.join(''));
this.refresh(obj);
$('#' + obj.attr('id') + 'ADD').on('click', function () {
var strs = [];
strs.push('<tr><td style="width:30px"><a href=\'#\' style="padding-left:10px" onclick=" $(this).parent().parent().remove();" class="operate_delete" title="删除" ></a></td>');
strs.push('<td><input class="inputvalue" type="text" style="width:99%;" value=""/></td>');
strs.push('</tr>');
obj.append(strs.join(''));
});
};
          //删除一行
this.refresh = function (obj) {
obj.find('td .operate_delete').on('click', function () {
$(this).parent().parent().remove();
});
};
          //获取多行数据以@符号分割,存入到数据库一个字段中
this.getData = function () {
var strs = [];
if (this.tableobj) {
this.tableobj.find('.inputvalue').each(function () {
strs.push($(this).val());
});
}
return strs.join('@');
}
}
var shifttableobj11 = new shifttable11();
</script>
//从数据库中读取数据(以@符号分割的字段)对应显示在多行中
function shift() {
$.get("ashx/list.ashx?" + Math.random(), { Action: "post", act: 'shift', id: id, time: time, type: type },
function (data, textStatus) {
if (data.length > 0) {
                var TODAY11 = data[0].TODAY11 ? data[0].TODAY11.toString().split('@') : new Array(5);
shifttableobjtoday11.init(TODAY11, $('#TABTODAY11'));
              }
}
)
//将多行数据提交到数据库
function submitshift() {
var data = {};
data.YESTERDAY11 = shifttableobj11.getData();
$.ajax({
url: "ashx/list.ashx?act=submitshift&r=" + Math.random(),
contentType: "application/json;charset=utf-8",
data: JSON.stringify([data]),
dataType: 'json',
type: 'POST',
success: function (data) {
if (data && data.flag) {
top.message("友情提示", "操作成功!", "show", "1500");
}
else {
top.message_alert("非常抱歉", data.msg, "info");
}
},
error: function (a, b) {
top.message_alert("非常抱歉", "操作失败", "info");
}
});
}

效果图

JQUERY动态绘制表格,实现动态添加一行,删除一行的更多相关文章

  1. jQuery动态对表格Table进行添加或删除行以及修改列值操作

    jQuery,不仅可以以少量的代码做很多操作,而且兼容性好(各种浏览器,各种版本). 下面用jQuery动态对表格Table进行添加或删除行以及修改列值操作 1.jQuery代码 <script ...

  2. 基于Bootstrap使用jQuery实现输入框组input-group的添加与删除-改进版

    上一次说到了基于Bootstrap使用jQuery实现输入框组input-group的添加与删除 ,初始状态下只有一个输入框组,可以通过点击输入框组的右侧“+”(或自定义的文字)可以在原输入框组的下面 ...

  3. 【HTML5】页面点击按钮添加一行 删除一行 全选 反选 全不选

    页面点击按钮添加一行    删除一行   全选   反选  全不选 页面效果图如下 html页面代码 <!DOCTYPE html> <html> <head> & ...

  4. 使用jQuery动态克隆表格,并且添加至div中(使用前需要引入jQuery)

    <!DOCTYPE html> <html> <head> <title></title> <meta charset="u ...

  5. jquery easyui使用(四)······添加,编辑,删除

    前端: <div style="font-size: 25px; font-weight: 700; margin: 50px 0 10px 10px;"> 车辆登记 ...

  6. 利用jquery动态添加和删除表格的一行,并且保存单行数据

    开发时遇到一个需求:要求要在页面的表格可以添加和删除一行,并能填写对应的数据后保存这一行数据. HTML代码 界面使用了freemarker框架,teams是后台传过来的list类型数据 <fo ...

  7. 利用jquery给指定的table动态添加一行、删除一行,复制,值不重复等操作

    $("#mytable tr").find("td:nth-child(1)") 1表示获取每行的第一列$("#mytable tr").f ...

  8. 在页面上绘制一张表格,使用 DOM 节点的动态添加和删除向表格中插入数据,点击表格每行后的“删除”超链接

    查看本章节 查看作业目录 需求说明: 在页面上绘制一张表格,使用 DOM 节点的动态添加和删除向表格中插入数据,点击表格每行后的"删除"超链接,使用 DOM 节点的删除操作将对应的 ...

  9. Javascript DOM 03 表格添加、删除 + 搜索

    获取 tBodies.tHead.tFoot.rows.cells   隔行变色 鼠标移入高亮   添加.删除一行 DOM方法的使用                                   ...

随机推荐

  1. SGI STL源码stl_vector.h分析

    前言 vector 是最常用的 C++ 容器,其动态扩容的特性是普通数组不具备的,这大大增加了编程的灵活性.虽然平时用 vector 很多,也能基本理解其原理,但无法从深层次理解.直到研读了 vect ...

  2. airflow迁移

    airflow迁移:airflow.cfg文件可以copydbinit时改数据参数 #airflow震乾源码copy:/data/venv/lib/python3.6/site-packages/ai ...

  3. (4.35)sql server清理过期文件【转】

    在SQL Server中, 一般是用维护计划实现删除过期文件.不过直接用脚本也是可以的,而且更灵活. 下面介绍三种方法, 新建一个作业, 在作业的步骤里加上相关的脚本就可以了. --1. xp_del ...

  4. 理解twisted中的reactor和deferred(二)

    Deferred可以添加多个回调函数,每个回调函数的结果作为下一个回调函数的参数 代码实例(可在pycharm中运行,摘自 https://twistedmatrix.com/documents/cu ...

  5. Scala 内部类及外部类

    转自:https://blog.csdn.net/yyywyr/article/details/50193767 Scala内部类是从属于外部类对象的. 1.代码如下 package com.yy.o ...

  6. 【LOJ】#3042. 「ZJOI2019」麻将

    LOJ#3042. 「ZJOI2019」麻将 如何判定一个集合牌有没有胡的子集是不是胡的 就用一个\(dp[j][k][0/1]\)表示有j个连续两个的串,有k个连续1个串,有没有对子,再记一下这个集 ...

  7. Linux系列(2):入门之线上求助

    前言:Linux命令那么多,你是否为记不住Linux的命令而烦恼呢? 这一章节就是来解决这个问题的. 1.Linux系统的线上求助 1.指令补全 在上一章节提到过使用[Tab]快捷键可以根据用户输入的 ...

  8. apache tika检测文件是否损坏

    Apache Tika用于文件类型检测和从各种格式的文件内容提取的库. 将上传文件至服务器,进行解析文件时,经常需要判断文件是否损坏.我们可以使用tika来检测文件是否损坏 maven引入如下: &l ...

  9. Win32汇编-编写PE结构解析工具

    汇编语言(assembly language)是一种用于电子计算机.微处理器.微控制器或其他可编程器件的低级语言,亦称为符号语言.在汇编语言中,用助记符(Mnemonics)代替机器指令的操作码,用地 ...

  10. Tomcat中的Host和Engine级别的servlet容器

    这边文章主要介绍的是Host容器 和 Engine容器.如果你想在同一个Tomcat上部署运行多个Context容器的话,你就需要使用Host容器,从理论上来讲,如果你的Tomcat只想要部署一个Co ...