jquery做的修改表格的例子

JSP

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<title>JqueryEdit</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">

<link rel="stylesheet" type="text/css" href="../css/table.css">

</head>
<script type="text/javascript" src="../javascript/jquery.js"></script>
<script type="text/javascript" src="../javascript/jqueryEdit.js"></script>
<body>
<table border="1px">
<tbody>
<tr>
<td>Edit1</td>
<td>Edit2</td>
<td>Edit3</td>
</tr>
</tbody>
</table>
</body>
</html>


$(document).ready(
function(){
//找到所有的TD节点
var tds =$("td");
//注册事件
tds.click(tdclick);
}
);
function tdclick(){
//找到当前节(TD)
var td = $(this);
//获得节点文本信息
var text = $(this).text();
//td.empty()清空
td.html("");
//创建input
var input = $("<input>");
//给当前input加入事件
input.keyup(function(event){
//判断浏览器
var myEvent = event || window.event;
//获得按键的值
var kcode = myEvent.keyCode;
var inputTexts = $(this).val();
if(kcode == 13){
//获得文本的值
var inputText = $(this).val();
//获得父TD
var tdNode = $(this).parent();
//赋值
tdNode.html(inputText);
//重新添加事件
tdNode.click(tdclick);
}
if(kcode == 27){
//获得文本的值
var inputText = $(this).val();
//获得父TD
var tdNode = $(this).parent();
//赋值
tdNode.html(text);
//重新添加事件
tdNode.click(tdclick);
}
});
//设属性
input.attr("value",text);
//也可以用input.appendTo(td);
td.append(input);
//文字全部选中
input.get(0).select();
//取消点击事件
td.unbind("click");
}
jQuery表格弹窗修改通常涉及到两部分:数据操作和UI交互。这里提供一个基本的例子,假设你有一个表格,点击某一行时,会出现一个弹窗,用户可以在其中修改内容。 首先,你需要HTML结构,包含一个表格和一个模态框: ```html <table id="myTable"> <!-- 表格数据 --> </table> <!-- 模态框 --> <div id="myModal" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <form id="editForm"> <!-- 表单元素,例如输入框对应表头 --> </form> </div> </div> </div> ``` 然后用jQuery来监听表格行的点击事件,并在点击时显示并填充模态框: ```javascript $(document).ready(function() { $('#myTable').on('click', 'tr', function(e) { e.preventDefault(); // 阻止默认行为 var row = $(this); // 获取当前行 var data = row.data(); // 获取该行的数据 // 显示模态框,并将数据填充到表单 $('#myModal').modal('show'); $('#editForm input[name=field]').val(data.field); // 示例字段名,替换为实际需要编辑的字段名 }); }); ``` 最后,当用户提交表单时,你还需要处理表单提交的行为,比如更新数据库: ```javascript $('#editForm').on('submit', function(e) { e.preventDefault(); var formData = $(this).serialize(); // 获取表单数据 $.ajax({ url: '/api/update', // 替换为实际的API地址 type: 'POST', data: formData, success: function(response) { // 更新成功后可能需要刷新表格等操作 // 清空表单以便再次编辑 $('#editForm')[0].reset(); // 或者关闭模态框 $('#myModal').modal('hide'); }, error: function(error) { console.error('Error updating:', error); } }); }); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值