实现表格的可编辑,点击修改以后可以编辑,代码如下:

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>可编辑表格</title>
<style>
.table1 td{height:30px;width:100px}
.input{padding:0;margin:0;height:100%;width:100%;border:none;} </style>
<head>
<body> <h4>可编辑表格:</h4>
<table id="table" class="table1" border="1" cellspacing="0">
<tr>
<td>test1</td>
<td>test2</td>
<td><button onclick="update(this,0)">修改</button></td>
</tr>
<tr>
<td>test3</td>
<td>test4</td>
<td><button onclick="update(this,1)">修改</button></td>
</tr>
<tr>
<td>test5</td>
<td>test6</td>
<td><button onclick="update(this,2)">修改</button></td>
</tr>
<tr>
<td>test7</td>
<td>test8</td>
<td><button onclick="update(this,3)">修改</button></td>
</tr>
</table> <script>
function update(obj,x){
var table = document.getElementById("table");
for(var i=0;i<table.rows[x].cells.length-1;i++){
var text = table.rows[x].cells[i].innerHTML;
table.rows[x].cells[i].innerHTML = '<input class="input" name="input'+ x + '" type="text" value=""/>';
var input = document.getElementsByName("input" + x);
input[i].value = text;
input[0].focus();
input[0].select();
}
obj.innerHTML = "确定";
obj.onclick = function onclick(event) {
update_success(this,x)
};
}
function update_success(obj,x){
var arr = [];
var table = document.getElementById("table");
var input = document.getElementsByName("input" + x);
for(var i=0;i<table.rows[x].cells.length-1;i++){
var text = input[i].value;
arr.push(text);
}
//把值赋值给表格,不能在取值的时候给,会打乱input的个数
for(var j=0;j<arr.length;j++){
table.rows[x].cells[j].innerHTML = arr[j];
}
//回到原来状态
obj.innerHTML = "修改";
obj.onclick = function onclick(event) {
update(this,x)
};
alert(arr + ",传到后端操作成功,刷新页面");
}
</script>
</body>
</html>

实现效果:

js 实现表格的可编辑状态的更多相关文章

  1. Java中如何设置表格处于不可编辑状态

    代码片段如下: 这样的话就可以将表格设置为不可编辑状态

  2. Bootstrap:Bootstrap_table第一篇:快速用bootstrap_table(支持参数)筛选并展示数据,固定表格前几列,实现表格单元格编辑

    1.准备好css和js文件 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstr ...

  3. Django前端HTML通过JS实现表格可编辑,动态添加行,回车完成新建文件夹

    功能描述: 点击“新建文件夹”按钮,在table的末尾增加一行:单击页面的新增行,使单元格td变成可编辑状态:输入内容后,当单元格失去焦点时,保存输入的内容:回车后通过AJAX提交后台完成新建文件夹. ...

  4. vue 表格数据编辑,点击取消或者完成按钮后,关闭编辑状态没有及时生效

    点击编辑按钮: 编辑状态下,表格可以编辑.但是点击“确认”或者“取消”按钮,列数据编辑状态已经修改,但是视图没有改变. 页面代码: 获取当前行的index,并直接修改当前行用于判断是否编辑状态的数据为 ...

  5. 解除网页右键限制和开启网页编辑状态的js代码

    当访问页面右键被限制了怎么办?很好办!将以下代码添加进收藏夹,点击执行即可: javascript:alert(document.onselectstart = document.onbeforeco ...

  6. easyui 在编辑状态下,动态修改其他列值。

    首先是自定义了一个方法uodateColumn更新列值 /** *自定义的修改列值方法 */ $.extend($.fn.datagrid.methods, { updateColumn: funct ...

  7. JS中表格的全选和删除要注意的问题

    在项目开发中,由于刚刚开始做项目,我对js还不是很精通,所以在用js对表格的全选和删除中遇到了不少问题,后来通过查找资料解决了,之后总结了一下关于js表格的全选和删除出现的一些问题,希望能帮助到大家. ...

  8. JTable只要一双击就进入编辑状态,禁止的方法实现

    我用JTable做了一个表格,表格内容只供查看和选择,可每次只要一双击,就进入编辑状态,可是现在我不需要当双击的时候修改表格的内容.这时候需要重载isCellEditable方法. 下面是我的实现的代 ...

  9. AngularJS进阶(十一)AngularJS实现表格数据的编辑,更新和删除

    AngularJS实现表格数据的编辑,更新和删除 效果 实现 首先,我们先建立一些数据,当然你可以从你任何地方读出你的数据 var app = angular.module('plunker', [' ...

随机推荐

  1. 解决svn pritine text not exist问题

    svn: E155032: The pristine text with checksum '$sha1$151400d1cd4c5fc190d500aa1826d45cb91f088f' not f ...

  2. 调试D2JS

    D2JS 最终加载运行于 nashorn 上,目前能调试 nashorn js 的 IDE 只有一款:NetBeans.eclipse 没有计划,神器号称支持 nashorn,对于简单类型可以观察,对 ...

  3. C和指针 第十五章 二进制I/O

    二进制I/O 数据写入到文件效率最高的是用二进制形式写入,二进制输出避免了在数值转换为字符串过程中,所涉及的开销和精度损失,但而精致并非人眼所能阅读,所以这个技巧只有当数据被另一个程序按顺序读取才能使 ...

  4. mysql load data 乱码

    解决方案: http://stackoverflow.com/questions/26256421/sql-load-data-infile-utf8-issue 即: load data local ...

  5. Unity NGUI添加UIRoot

    导入NGUI包后,菜单多出一个选项 "NGUI",选择其子选项 "options" -- "Reset Prefab ToolBar" ,在 ...

  6. Node.js配合node-http-proxy解决本地开发ajax跨域问题

    情景: 前后端分离,本地前端开发调用接口会有跨域问题,一般有以下3种解决方法: 1. 后端接口打包到本地运行(缺点:每次后端更新都要去测试服下一个更新包,还要在本地搭建java运行环境,麻烦) 2. ...

  7. NSIS对话框单位造成的控件移位问题

    在使用NSIS脚本开发安装卸载程序,使用自定义的nsdialog控件.发现在小部分系统上安装时,一些控件会消失,或者挪位.于是排除问题,看看这些控件的为位置和坐标,发现基本上是使用了对话框单位的控件, ...

  8. Python: Windows 7 64位 安装、使用 pymongo 3.2

    官网tutorial:  http://api.mongodb.com/python/current/tutorial.html 本教程将要告诉你如何使用pymongo模块来操作MongoDB数据库. ...

  9. lockf

    lockf( fd, mode, size ); mode 为 1 时表示加锁,为 0 时表示解锁. #include<stdio.h> #include<unistd.h> ...

  10. curses.h的安装和使用

    gcc test.c -o test 用以上命令编译包含curses.h头文件的程序时会出现各种引用未定义的错误,并且已经安装了 kernel-devel ncurese-devel ncurese- ...