`
xalydxn
  • 浏览: 14493 次
  • 性别: Icon_minigender_2
  • 来自: 天津
社区版块
存档分类
最新评论

jQuery学习记录----可编辑的表格(六)

阅读更多

实现可编辑的表格,如某一单元格点击后变成输入框,输入完成后按回车,或失去焦点时又变为文本。其实现的基本思路是:

1、当点击某一单元格时,将此单元格的文字保存起来。

2、清除此文字。即单元格的文字。

3、生成一个文本框,将其值设为保存的文本值。

4、给该文本框添加事件,如按键,如失去焦点事件。

4.1、事件主要处理当按下某一特殊键如Enter或失去焦点时,将输入框的值重新存为单元格的值。

4.2、事件中还有一步非常重要,即再次调用单元格的单击事件。因为第----步已经对单元格释放了该事件。

5、将该文本框追加给单元格

6、给单元格取消单元事件。如不取消的话,生成的文本框也会有此单击事件,这样一来,等第二次单击文本框时里面的值就没有了。

现将JS代码贴出来:

$(document).ready(function(){
	
	var tds = $('td');
	tds.click(tdclick);
});

function tdclick(){
	var td = $(this);
	var text = td.text();
	td.html('');
	var input = $('<input>');
	//input.val(text);这样也可以实现
	input.attr('value',text);
	
	input.keyup(function (event){
		var myEvent = event||window.Event;
		var keyCode = myEvent.keyCode;
		//alert(keyCode)
		if (keyCode==13) {//判断是否为按下Enter
			var inputNode = $(this);
			var inputText = inputNode.val();
			td.html(inputText);
			td.click(tdclick);
		}
		else if(keyCode==27){//判断是否为按下Esc
			var inputNode = $(this);
			inputNode.attr('value',text);
		}
	});
	
	//文本框失去焦点时,重新变回文本,文本内容为输入框中的值
	input.blur(function(){
		td.html(input.val());
		td.click(tdclick);
	});
	
	
	td.append(input);
	var inputDom = input.get(0);//将jquery对象转化为DOM对象
	inputDom.select();
	td.unbind('click');//当出现文本框时再单出不需要再调用单击函数tdclick
}

 

此篇涉及的代码见附件。

分享到:
评论
1 楼 javaliyuanyuan 2011-10-20  
晕,源码不能用

相关推荐

    jquery grid插件 -- 编辑表格

    本文将深入探讨`jQuery Grid`的使用方法及其在编辑表格中的应用。 首先,`jQuery Grid`基于`jQuery`库,所以使用前需确保页面已引入`jQuery`。然后,我们需要引入`jQuery Grid`的核心库,通常是`jquery.jqGrid.min....

    jquery.jqGrid-4.3.1+jquery-ui-1.8.17.rar

    例如,jQuery UI的对话框可以用来显示jqGrid中的详细信息,或者用于编辑记录。同时,jQuery UI的动画效果可以与jqGrid的交互动作相结合,为用户提供更流畅的体验。 在实际应用中,这两个库的结合使用,往往需要对...

    jquery.jqGrid-4.5.2.zip

    jqGrid是基于jQuery的表格插件,提供丰富的功能,如分页、排序、搜索、过滤、编辑、导出等,支持Ajax数据加载,能够处理本地或远程数据源。4.5.2版本是对早期版本的升级,优化了性能,增强了稳定性,并引入了一些新...

    jquery.jqGrid-4.4.3

    jQuery.jqGrid是基于jQuery库的表格插件,提供丰富的功能,如数据的分页、排序、搜索和编辑等,适用于创建交互式的、数据密集型的Web页面。4.4.3版本是在该插件历史发展中的一次重要更新,它修复了先前版本的一些...

    jquery.jqGrid-3.5-beta

    它的列模型设置灵活,可以定制每一列的显示方式,包括宽度、对齐方式、可编辑性等。并且,jqGrid提供了丰富的事件处理机制,如`onSelectRow`、`onSortCol`等,让开发者能够精确地控制用户的交互行为。 总结来说,...

    jquery-easyui-1.4.2

    《jQuery EasyUI 1.4.2:轻松构建网页的强大框架》 jQuery EasyUI 是一个基于 jQuery 的前端开发框架,其1.4.2版本以其高效、易用和功能丰富的特性,深受开发者喜爱。该框架旨在简化网页界面的构建过程,提供一系列...

    Jquery-EasyUi-demo.rar_DEMO_easyui_easyui demo_floatingg93_organ

    其次,对话框(dialog)在EasyUI中扮演了重要的角色,它常用于弹出式的操作窗口,如添加新记录或编辑现有记录。在这个DEMO中,dialog被用作添加和编辑数据的界面,提供了一个独立的操作空间,避免了对主页面的干扰。...

    jquery-easyui-1.2.2及中英文API文档

    - **Datagrid**:表格组件,支持数据的分页、排序、筛选、编辑等操作。 - **Tree**:树形结构组件,常用于展示层次关系的数据。 - **Tab**:选项卡组件,可以在同一区域内展示多个页面或内容。 - **DatePicker**:...

    jquery学习笔记 实战2 可以编辑的表格

    在“jquery学习笔记 实战2 可以编辑的表格”这个主题中,我们将深入学习如何利用jQuery创建一个用户可以直接在页面上编辑数据的动态表格。 首先,`editable.html`文件是网页的主体部分,它可能包含了HTML结构,其中...

    jquery-easyui-1.5.5.2官网

    2. **Grid(表格)**:支持分页、排序、过滤、编辑等数据操作,可以绑定到 JSON 数据源,实现数据的动态加载。 3. **Tree(树形结构)**:展示层次化的数据,支持展开/折叠、异步加载、节点操作等功能。 4. **Form...

    jquery-easyui-1.3.5

    - **jquery.easyui.min.js**:这是jQuery EasyUI的核心库,包含了所有组件的压缩和优化版本,是项目中必不可少的文件。 - **jquery.min.js**:基础的jQuery库,EasyUI依赖于它来执行JavaScript操作。 - **easyloader...

    jQuery编辑表格+JS日历【升级版】

    在本项目中,我们主要关注的是"jQuery编辑表格+JS日历【升级版】",这是一个结合了数据编辑和日历功能的Web应用组件。这个升级版相较于之前的版本,不仅在视觉效果上进行了美化,提高了用户体验,而且还添加了登录...

    jquery-easyui-1.8.4.zip

    5. **表格(Grid)**:表格组件提供了数据展示和管理的强大功能,支持分页、排序、过滤和编辑,非常适合数据密集型应用。 6. **表单(Form)**:EasyUI 的表单组件提供了各种输入控件和验证机制,使得数据收集和...

    jquery.jqGrid-4.0.0包

    这些脚本提供了丰富的API和事件,让开发者能够深入控制网格的各个方面,如添加、编辑、删除记录,以及自定义按钮和工具栏等。 CSS部分位于"css"目录,其中的"ui.jqgrid.css"文件是jqGrid的样式定义,定义了表格的...

    jquery.jqGrid-4.1.1.zip

    总结来说,jQuery.jqGrid 4.1.1 是一款功能强大的表格插件,它为 JavaScript 开发者提供了强大的数据网格功能,无论是小型项目还是大型企业级应用,都能找到合适的应用场景。通过深入理解和充分利用这个压缩包中的...

    jQuery tonytomov-jqGrid-v4.5.2 插件

    4. 调用jqGrid的API方法实现各种操作,如加载数据、刷新表格、编辑记录等。 例如,基本的HTML结构可能如下: ```html &lt;table id="jqGrid"&gt;&lt;/table&gt; &lt;div id="gridpager"&gt;&lt;/div&gt; ``` 然后在JavaScript中初始化...

    JQuery实现可编辑表格

    在IT领域,jQuery是一个广泛使用的...通过学习和实践这些知识,开发者能够创建具有高度交互性和用户体验的可编辑表格。如果博客提供的源码质量高且详细,那么对于初学者和有经验的开发者来说都是一份宝贵的资源。

    (转)基于jQuery的GridView-Flexigrid(2)-扩展和修复

    - 编辑:可实现行内编辑,方便用户修改数据。 - 表格样式:提供了多种主题(Themes),以适应不同的界面设计需求。 2. **扩展性**: - 自定义列:可以设置列的宽度、标题、对齐方式等属性,甚至可以添加自定义的...

    可编辑的表格:jQuery+PHP实现实时编辑表格字段内容

    1. **实时编辑**:当用户点击表格中的某个单元格时,jQuery可以通过添加CSS类或属性改变该单元格的样式,使其变为可编辑状态。例如,可以添加一个`contenteditable`属性使单元格变为文本输入框。 2. **事件监听**:...

Global site tag (gtag.js) - Google Analytics