学习和交流——jquery资料
一个用jquery完成的效果:可编辑的表格
1.先写一个含有表格的页面jqueryEdit.html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>jquery示例3:可修改的表格</title>
<script type="text/javascript" src="jslib/jquery.js"></script>
<script type="text/javascript" src="jslib/jqueryEditUseBlur.js"></script>
</head>
<body>
<table border="1">
<tbody>
<tr>
<td>1234</td>
<td>5678</td>
</tr>
</tbody>
</table>
</body>
</html>
2.书写一个javaScript脚本文件,来完成表格的可编辑效果,jqueryEdit.js:
这个文件中,当输入框修改完后是按回车键提交的,下面一个文件是通过鼠标相对文本框失去焦点来实现提交的,本人认为下面第二种方法比较合乎实际一点。
//在页面加载的时候,让所有的td有一个点击事件
$(document).ready(function(){
var tdNods = $("td");
tdNods.click(tdClick);
});
//td点击触发的函数
function tdClick(){
//1.取出当前td里面的文本内容
var td = $(this);
var tdText = td.text();
//2.清空td里面的文本内容
td.html(""); //也可以使用td.empty();
//3.建立一个输入框,也就是input标签
var input = $("<input>");
//4.将输入框的内容设为刚才保存的td里面的文本内容
input.attr("value",tdText);
//4.5.让文本框能够响应键盘按下的keyup事件,主要是用于处理回车确认
input.keyup(function(event){
//1.获取当前用户按下的键值
//解决不同浏览器获得事件对象的差异,
// IE用自动提供window.event,而其他浏览器必须显示的提供,即在方法参数中加上event
var myEvent = event || window.event;
var keyCode = myEvent.keyCode;
//2.判断是否是回车按下
if(keyCode == 13){
//2.保存当前输入框的内容
var input = $(this);
var inputText = input.val();//这个地方不能用text(),而是用val()
//3.清空td的内容,即去掉输入框
var td = input.parent("td");
td.empty();
//4.将保存的文本内容填充到td中去
td.html(inputText);
//5.让td重新拥有点击事件
td.click(tdClick);
}
});
//5.将输入框加到td中
td.append(input); //也可以用input.appendTo(td);
//5.5 让文本框中的文字被高亮选中
//需要将jquery对象转化为DOM对象
var inputDom = input.get(0);
inputDom.select();
//6.需要移除td上的点击事件
td.unbind("click");
};
下面这个脚本文件是通过鼠标相对文本框失去焦点来实现提交的jqueryEditUseBlur.js:
下面用红色显示的是与上面文件不一样的地方。
//在页面加载时候,就使td节点具有click点击能力
$(document).ready(function(){
var tdNods = $("td");
tdNods.click(tdClick);
});
//td的点击事件
function tdClick(){
//将td的文本内容保存
var td = $(this);
var tdText = td.text();
//将td的内容清空
td.empty();
//新建一个输入框
var input = $("<input>");
//将保存的文本内容赋值给输入框
input.attr("value",tdText);
//将输入框添加到td中
td.append(input);
//给输入框注册事件,当失去焦点时就可以将文本保存起来
input.blur(function(){
//将输入框的文本保存
var input = $(this);
var inputText = input.val();
//将td的内容,即输入框去掉,然后给td赋值
var td = input.parent("td");
td.html(inputText);
//让td重新拥有点击事件
td.click(tdClick);
});
//将输入框中的文本高亮选中
//将jquery对象转化为DOM对象
var inputDom = input.get(0);
inputDom.select();
//将td的点击事件移除
td.unbind("click");
}
3.对上面的效果进行进一步的修改,使之更加人性化
通过修改使你在修改的过程中文本的内容可以按Esc键撤销还原到修改前的状态
//在页面加载时候,就使td节点具有click点击能力
$(document).ready(function(){
var tdNods = $("td");
tdNods.click(tdClick);
});
//td的点击事件
function tdClick(){
//将td的文本内容保存
var td = $(this);
var tdText = td.text();
//将td的内容清空
td.empty();
//新建一个输入框
var input = $("<input>");
//将保存的文本内容赋值给输入框
input.attr("value",tdText);
//将输入框添加到td中
td.append(input);
//给输入框注册事件,当失去焦点时就可以将文本保存起来
input.blur(function(){
//将输入框的文本保存
var input = $(this);
var inputText = input.val();
//将td的内容,即输入框去掉,然后给td赋值
var td = input.parent("td");
td.html(inputText);
//让td重新拥有点击事件
td.click(tdClick);
});
input.keyup(function(event){
//1.获取当前用户按下的键值
//解决不同浏览器获得事件对象的差异,
// IE用自动提供window.event,而其他浏览器必须显示的提供,即在方法参数中加上event
var myEvent = event || window.event;
var keyCode = myEvent.keyCode;
//2.判断是否是ESC键按下
if(keyCode == 27){
//将input输入框的值还原成修改之前的值
input.val(tdText);
}
});
//将输入框中的文本高亮选中
//将jquery对象转化为DOM对象
var inputDom = input.get(0);
inputDom.select();
//将td的点击事件移除
td.unbind("click");
}
-------------------------------------------------------------------------------
最新版本js分享->
分享到:
相关推荐
这在创建富文本编辑器、自定义表单组件或实现某些特殊交互时非常有用。 首先,让我们理解基本概念。在HTML的`<input type="text">`或`<textarea>`元素中,光标代表用户当前输入的位置。而选中文本则涉及选取一个或...
在网页交互设计中,用户友好性和易用性...总的来说,通过jQuery,我们可以轻松地实现这种动态转换文本和文本框的功能,从而提升网页的互动性和用户体验。记住,始终关注用户的操作习惯和舒适度,使网页设计更加人性化。
通过jQuery,我们可以根据需求改变标签的可编辑状态,例如设置`disabled`属性或移除事件监听器。 6. **禁用创建标签**: 当系统处于特定状态或用户无权限时,可能需要禁用创建新标签的功能。这可以通过监听文本框...
1. **禁用状态的样式**:禁用状态的文本框通常会呈现一种不可编辑的灰色样式,这是浏览器的默认行为,可以通过 CSS 自定义禁用元素的样式。 2. **事件绑定**:禁用的文本框不会触发任何用户交互事件,如 `focus`、`...
本示例"在线编辑文本框.zip"提供了一个名为ueditor的演示项目,它是一个可运行的Dome,帮助开发者了解如何集成和自定义此类功能。 Ueditor是百度开发的一款强大的富文本编辑器,支持HTML编辑,并且可以上传图片,这...
总结一下,实现HTML、JavaScript和jQuery的文本框水印功能,主要包括以下几个步骤: 1. 在HTML中创建文本框,并可选地设置`placeholder`属性。 2. 引入jQuery库和`JqWatermark.js`插件。 3. 使用`.ready()`函数确保...
让文本框或可编辑div添加插入表情功能。 让textarea或可编辑的div能够插入表情符号。 预览 功能特点 支持给textarea或可编辑div加上表情功能,自动识别元素类型。 支持将emoji表情添加到textarea或可编辑的div中,...
【jQuery实现可编辑表格】 在网页开发中,有时我们需要创建交互性强、用户友好的表格,允许用户直接在表格内编辑数据。本示例讲解如何利用jQuery实现这一功能,特别是针对HTML表格的单元格进行编辑。这个例子的核心...
现在,我们使用jQuery监听`textarea`的`keyup`事件,每当用户在文本框中输入或删除字符时,都会触发这个事件。我们可以在这个事件的回调函数中获取当前的输入字数,并更新`countDisplay`的文本: ```javascript $...
可编辑的下拉框 既可以编辑,又可以下拉选择 很不错的
根据提供的文件信息,我们可以了解到一个关于如何利用jQuery实现点击页面上的文字内容,使其变为可编辑状态,并将修改后的内容保存到数据库的IT知识点。 首先,知识点涵盖的标题明确指出是“jquery实现点击文字可...
我们知道jQuery是一个轻便的JavaScript框架,里面封装了系统和程序常用到的一些方法,利用CSS、HTML可以将这些内容运用起来,做出各式各样好看的界面,下面小编使用jQuery实现了一个“可编辑的表格”的例子。...
在本示例中,我们将通过jQuery库来实现这一功能。 首先,我们需要理解jQuery的基本用法。jQuery是一个轻量级的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互等任务。在这个场景中,我们将利用...
而“AqiStar.TextBox.dll”可能是一个文本框控件的动态链接库,用于实现编辑器内的文本输入和编辑功能。 “NVelocity.dll”可能是一个模板引擎,用于处理“Templates”目录下的模板文件,使得用户可以方便地创建和...
《jQuery实现的精简UBB代码编辑器源码解析》 在Web开发中,富文本编辑器是一个不可或缺的工具,它允许用户以类似Word的方式在网页上编辑内容,同时能够生成HTML代码。UBB(Unified BBCode)是一种轻量级的标记语言...
在网页开发中,有时我们需要为用户提供直接在表格中编辑数据的便利性,这可以通过使用jQuery实现跨浏览器的可编辑表格功能。本篇文章将详细介绍如何利用jQuery实现这一功能,支持包括IE、Firefox、Safari、Chrome和...
本篇文档介绍了一个使用jQuery实现的动态效果,即在网页表格中实现点击单元格后,弹出一个含有输入框的表格行,用户可在输入框中编辑原有单元格的内容,完成编辑后点击确定按钮,新值会取代原内容并淡入显示,而后原...
3. **事件处理**:文档讲述了如何利用JQuery的事件处理机制来实现表格的可编辑功能。当用户点击表格单元格时,会触发一个函数来处理编辑逻辑。文档中还提到了对回车键和ESC键的处理,这些都是通过监听键盘事件...