jquery 应用代码 方便的排序功能


Posted in Javascript onFebruary 06, 2010

终极目的:想做一个方便的排序功能。
具体实现:点击后可以输入排序的数字编号,移开后自动更新数据库。

1,我想把这个功能用<span>来完成,也就需要一个在页面上监控指定的span的东西,他就是:
ready(fn)当DOM载入就绪可以查询及操纵时绑定一个要执行的函数。
$(document).ready(function(){
// 在这里写你的代码...
});
2,页面上<span>很多,如何才能区分呢?用id?还是class?id太单一,于是用class,因为排序不是针对一条数据,而是多条。
<span class="BY">3</span><br /><BR><span class="BY">2</span><br /><BR><span class="BY">1</span><br /><BR><span class="BY">0</span><br />

3,绑定的事件我想肯定是click
$(document).ready(function(){<BR> $(".BY").click(function() {<BR> alert('测试下先');<BR> });<BR><BR>}); <BR>
4,然后要让span变成一个输入框才行,go

$(document).ready(function(){ 
$(".BY").click(function() { 
var old = $(this).text(); 
var o = $(this); 
o.html("<input class=\"OnBY\" type=\"text\" value=\"" + old + "\"/>"); 
}); 
});

5,这时发现了一个 问题,无法点击的。点了之后数字没了。因此就无法输入更改了。想个什么办法呢?还记得自动获取选择么?
$(document).ready(function(){ 
$(".BY").click(function() { 
var old = $(this).text(); 
var o = $(this); 
o.html("<input class=\"OnBY\" type=\"text\" onMouseOver=\"this.select();\" value=\"" + old + "\"/>"); 
}); 
});

6,很简单的可以更改了。不过当鼠标移开的时候,不能变回去了。郁闷,咋整?
$(document).ready(function(){ 
$(".BY").click(function() { 
var old = $(this).text(); 
var o = $(this); 
o.html("<input class=\"OnBY\" type=\"text\" onMouseOver=\"this.select();\" value=\"" + old + "\"/>"); 
$(".OnBY").blur(function() { 
o.html($(".OnBY").val()); 
}); 
}); 
});

用失去焦点函数,把html代码替换回来就是。换回来的还是修改的值。
7,不过 不能更数据库交涉,接下来就要用到ajax。看看。
$(document).ready(function(){ 
$(".BY").click(function() { 
var old = $(this).text(); 
var o = $(this); 
o.html("<input class=\"OnBY\" type=\"text\" onMouseOver=\"this.select();\" value=\"" + old + "\"/>"); 
$(".OnBY").blur(function() { 
$.ajax({ 
type: "GET", 
url: "Admin_BY.aspx", 
data: "BY=" + $(".OnBY").val(), 
success: function(msg) { 
alert(msg); 
o.html($(".OnBY").val()); 
} 
}); 
}); 
}); 
});

把修改的By参数提交给Admin_BY.aspx处理,后台的处理我就不多说了。用Requst.QueryString来获取。
8,再改进一下,排序肯定要指定一个数据ID

<span class="BY" DbID="3" title="点击修改">3</span><br />
<span class="BY" DbID="2" title="点击修改">2</span><br />
<span class="BY" DbID="1" title="点击修改">1</span><br />
<span class="BY" DbID="0" title="点击修改">0</span><br />

$(document).ready(function(){ 
$(".BY").click(function() { 
var old = $(this).text(); 
var o = $(this); 
o.html("<input class=\"OnBY\" type=\"text\" onMouseOver=\"this.select();\" value=\"" + old + "\"/>"); 
$(".OnBY").blur(function() { 
$.ajax({ 
type: "GET", 
url: "Admin_BY.aspx", 
data: "ID=" + o.attr("BYID") + "&BY=" + $(".OnBY").val(), 
success: function(msg) { 
if (msg.indexOf("[BYNOK]")>0) { 
o.html($(".OnBY").val()); 
} else { 
alert("发生错误: " + msg); 
o.html(old); 
} 
} 
}); 
}); 
}); 
});

还有更多想法,等有空再增加上去。比如修改时,数据处理有个时间,在等待的时间里,改变下鼠标样式为繁忙等。
或更新后,重新装载数据,因为具体数据不同,只能具体应用。也或者直接刷新页面。

初学原创,请各位高手不吝赐教。
Kas

PS:关于ERic Poon 兄弟说何处用到,抓个图参考下吧。
jquery 应用代码 方便的排序功能

Javascript 相关文章推荐
Javascript-Mozilla和IE中的一个函数直接量的问题
Jan 09 Javascript
Chrome中模态对话框showModalDialog返回值问题的解决方法
May 25 Javascript
jQuery插件Skippr实现焦点图幻灯片特效
Apr 12 Javascript
jQuery简单实现提交数据出现loading进度条的方法
Mar 29 Javascript
JavaScript来实现打开链接页面的简单实例
Jun 02 Javascript
js实现可键盘控制的简单抽奖程序
Jul 13 Javascript
AngularJS中transclude用法详解
Nov 03 Javascript
express+mockjs实现模拟后台数据发送功能
Jan 07 Javascript
js键盘事件实现人物的行走
Jan 17 Javascript
vue+elementUi 实现密码显示/隐藏+小图标变化功能
Jan 18 Javascript
JavaScript类的继承多种实现方法
May 30 Javascript
原生js实现html手机端城市列表索引选择城市
Jun 24 Javascript
jquery1.4后 jqDrag 拖动 不可用
Feb 06 #Javascript
javascript小数计算出现近似值的解决办法
Feb 06 #Javascript
jquery 插件实现图片延迟加载效果代码
Feb 06 #Javascript
Lazy Load 延迟加载图片的 jQuery 插件
Feb 06 #Javascript
jquery.lazyload  实现图片延迟加载jquery插件
Feb 06 #Javascript
利用jQuery 实现GridView异步排序、分页的代码
Feb 06 #Javascript
javascript contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
Feb 04 #Javascript
You might like
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
2008/11/18 PHP
新浪SAE云平台下使用codeigniter的数据库配置
2014/06/12 PHP
php单态设计模式(单例模式)实例
2014/11/18 PHP
php+mysql删除指定编号员工信息的方法
2015/01/14 PHP
PHP编程实现脚本异步执行的方法
2017/08/09 PHP
javascript 日期常用的方法
2009/11/11 Javascript
检测jQuery.js是否已加载的判断代码
2011/05/20 Javascript
实测jquery data()如何存值
2013/08/18 Javascript
js/jquery解析json和数组格式的方法详解
2014/01/09 Javascript
JavaScript中字符串分割函数split用法实例
2015/04/07 Javascript
javascript数组去重方法汇总
2015/04/23 Javascript
jquery插件锦集【推荐】
2016/12/16 Javascript
深入学习jQuery中的data()
2016/12/22 Javascript
vue实现样式之间的切换及vue动态样式的实现方法
2017/12/19 Javascript
React 高阶组件入门介绍
2018/01/11 Javascript
在AngularJs中设置请求头信息(headers)的方法及不同方法的比较
2018/09/04 Javascript
Layui 动态禁止select下拉的例子
2019/09/03 Javascript
JavaScript实现联动菜单特效
2020/01/07 Javascript
[01:33]完美世界DOTA2联赛PWL S3 集锦第二期
2020/12/21 DOTA
修改Python的pyxmpp2中的主循环使其提高性能
2015/04/24 Python
python实现快速排序的示例(二分法思想)
2018/03/12 Python
Python Web编程之WSGI协议简介
2018/07/18 Python
python中文编码与json中文输出问题详解
2018/08/24 Python
用Python实现筛选文件脚本的方法
2018/10/27 Python
pandas通过loc生成新的列方法
2018/11/28 Python
解决python字典对值(值为列表)赋值出现重复的问题
2019/01/20 Python
对python读取CT医学图像的实例详解
2019/01/24 Python
Pytorch 实现focal_loss 多类别和二分类示例
2020/01/14 Python
PyQt5的相对布局管理的实现
2020/08/07 Python
html5 canvas 使用示例
2010/10/22 HTML / CSS
机电一体化大学生求职信
2013/11/08 职场文书
小学生爱国演讲稿
2014/04/25 职场文书
运动会演讲稿100字
2014/08/25 职场文书
党员个人对照检查材料范文
2014/09/24 职场文书
html5调用摄像头实例代码
2021/06/28 HTML / CSS
Nginx防盗链与服务优化配置的全过程
2022/01/18 Servers