AJAX学习笔记05

举报
wh_bn 发表于 2021/12/16 00:13:48 2021/12/16
【摘要】   AJAX学习笔记05 学习课程: 学习内容 相关文件     实现可编辑的表格 jquery-editTable.jsp jquery.js jque...

AJAX学习笔记05

学习课程:

学习内容

相关文件

 

 

实现可编辑的表格

jquery-editTable.jsp

jquery.js

jquery-editTable.js

jquery-editTable.css

实现效果:

点击单元格,单元格会变成一个文本输入框,文本框中初始的内容为单元格中的内容,并且这些内容处于被选择状态下

可以在单元格中输入文本内容,

单击回车,文本中的内容会转换到单元格中的内容

想要修改成原来的内容可以按下ESC键

三个文件的代码:

Jquery-editTable.jsp

 

  1. <link rel="stylesheet" type="text/css"                                         href="css/jquery-editTable.css"><script type="text/javascript" src="jslib/jquery.js" /><script type="text/javascript" src="jslib/jquery-editTable.js" /><table>     <tbody>     <tr>     <td>第一个单元格</td>     <td>第二个单元格</td>     </tr>     </tbody></table>

 

jquery-editTable.css

 

  1. @CHARSET "UTF-8"table , td{  /*为表格加入边框,让相邻边框合并*/border-collapse: collapse;border1px solid black;  /*abcdef abcd0b abcd0a*/color: ab0d0a;}

 

jquery-editTable.js

 

  1. //在页面加载时,让所有的td都拥有一个点击事件 $(document).ready( function(){//找到所有的td标签 var tds = $("td"); //为td标签添加单击事件 tds.click( tdClick );} );function tdClick(){//0.保存当前的td节点 var td = $( this );//1.取出当前td中的内容文本保存起来 var text = td.text();//2.清空td里面的内容 td.empty();//3.建立一个文本框,即一个input的元素节点 //为什么创建<input>标签就创建出文本框, //经过测试,input的type属性默认类型为text  var input = $("<input type='text'>");//4.设置文本框的值是保存起来的文本内容 //input.attr( "type" , "button"); input.attr( "value" , text );//4.5让文本框响应键盘事件 input.keyup( function( event ){//0.获取用户按下的键值 var keyEvent = event || window.event;var keyCode = keyEvent.keyCode;//1.判断是否按下回车 if ( keyCode == 13 ){//2.获取当前文本框的内容 var inputNode = $( this );//3.清空td里面的内容 td.empty();//4.将保存的文本框中的内容填充到td中 td.html( inputNode.val() ); //5.让td重新拥有点击事件 td.click( tdClick );}//扩展作业:按下ESC可以恢复操作 //ESC键的keyCode为27 if ( keyCode == 27 ){var inputNode = $( this );input.val( text );}});//5.将文本框中的内容加入到td中 td.append( input ); //input.appendTo( td ); //当td中的内容变成一个input的元素节点以后,不再响应onclick事件 //当td中的内容从input的元素节点变成文字信息时,再将onclick事件注册上去 //5.5将文本框中的文字被选中 //将JQuery对象转换为普通的DOM对象,才能调用select()方法 var inputDom = input.get( 0 );inputDom.select();//6.取消td上的点击事件 API,事件——unbind(); td.unbind();}

 

文章来源: blog.csdn.net,作者:fengda2870,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/fengda2870/article/details/3300865

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。