jQuery+ajax实现鼠标单击修改内容的方法


Posted in Javascript onJune 27, 2014

现有表格中的一行的代码如下所示: 

<tr>
 <td><span class="catid">2</span></td>
 <td>公司介绍</td>
 <td>内部栏目</td>
 <td><span class="listorder" title="点击修改">2</span></td>
</tr>

要实现鼠标单击修改内容思路如下:
 
1、点击栏目排序栏目中的数字,获取同一行的第一列中的内容,即栏目id
2、隐藏栏目排序中的数字
3、在栏目排序列中插入input框,并在input框中显示栏目排序中的内容,并设置为焦点
4、修改input中的内容,失去焦点的时候提交数据,用ajax向服务器传递数据 方法为post方法
5、提交数据的时候,友好提示修改中。。。 或者等待图片
6、返回成功信息 ,重新显示修改后的内容 去掉input框

实现这一功能的jquery核心代码如下:

$('.listorder').click(function(e){
 var catid = $(this).parent().siblings("td:eq(0)").text();//获取同一行上 第一列中的id值
 var listorder_now_text = $(this).text();//获取listorder中的内容 先保存起来
 $(this).text("");//设置内容为空
 var list_form = '<input type="text"  value="'+listorder_now_text+'" size=2 class="listorder_input" />' ;
 $(this).parent().append(list_form); //插入 input框
 $(".listorder_input").focus();
//自定义一个div 提示修改中
 var loading = '<div id="loading"><img src="img/loading.gif" alt="修改中..."/></div>';
 $(this).parent().append(loading);
 $('#loading')
  .css({
   "color" : "red" ,
   "display" : "none"
  })
//定义ajax的全局事件
 $(this).ajaxStart(function(){
  $('#loading').show();
 })
 $(this).ajaxStop(function(){
  $('#loading').remove();
 })
 $(".listorder_input").blur(function(){
  var thislist = $(this).siblings(); //取得同级的标签 即 修改后需要显示的 listorder
  $.post("ajax.php",{
  action : "mod_listorder",
  catid : catid ,
  listorder : $(this).attr("value")
  } , function(data, textStatus){
    $(thislist).text(data);
    }
  );//end .post
  $(this).remove();
 })//end function blur
})// end function click

ajax.php中内容就简单了,这里只做处理做演示用,并没有向服务器提交数据,代码如下:

sleep(1);//延时运行1秒,查看效果用,实际代码中不需要
echo $_POST['listorder'];
Javascript 相关文章推荐
JavaScript replace(rgExp,fn)正则替换的用法
Mar 04 Javascript
运用jQuery定时器的原理实现banner图片切换
Oct 22 Javascript
使表格的标题列可左右拉伸jquery插件封装
Nov 24 Javascript
自己封装的常用javascript函数分享
Jan 07 Javascript
jQuery学习笔记之jQuery中的$
Jan 19 Javascript
提交按钮的name='submit'引起的js失效问题及原因
Feb 25 Javascript
jQuery实现文本展开收缩特效
Jun 03 Javascript
基于Vue的SPA动态修改页面title的方法(推荐)
Jan 02 Javascript
CKEditor4配置与开发详细中文说明文档
Oct 08 Javascript
vue基础之使用get、post、jsonp实现交互功能示例
Mar 12 Javascript
jQuery操作事件完整实例分析
Jan 10 jQuery
vue实现前端分页完整代码
Jun 17 Javascript
node.js实现逐行读取文件内容的代码
Jun 27 #Javascript
javascript实现的HashMap类代码
Jun 27 #Javascript
js图片滚动效果时间可随意设定当鼠标移上去时停止
Jun 26 #Javascript
Javascript字符串对象的常用方法简明版
Jun 26 #Javascript
fixedBox固定div漂浮代码支持ie6以上大部分主流浏览器
Jun 26 #Javascript
js实现回放拖拽轨迹从过程上进行分析
Jun 26 #Javascript
JS的事件绑定深入认识
Jun 26 #Javascript
You might like
人族 TERRAN 概述
2020/03/14 星际争霸
PHP调用三种数据库的方法(3)
2006/10/09 PHP
用php实现像JSP,ASP里Application那样的全局变量
2007/01/12 PHP
比较简单的百度网盘文件直链PHP代码
2013/03/24 PHP
php制作动态随机验证码
2015/02/12 PHP
PHP实现的简单网络硬盘
2015/07/29 PHP
功能强大的PHP图片处理类(水印、透明度、旋转)
2015/10/21 PHP
php查询操作实现投票功能
2016/05/09 PHP
PHP 数组基本操作小结(推荐)
2016/06/13 PHP
PHP简单计算两个时间差的方法示例
2017/06/20 PHP
PHP代码重构方法漫谈
2018/04/17 PHP
PHP 实现手机端APP支付宝支付功能
2018/06/07 PHP
List the Codec Files on a Computer
2007/06/11 Javascript
封装了一个js图片轮换效果的函数
2011/09/28 Javascript
原生javascript图片自动或手动切换示例附演示源码
2013/09/04 Javascript
jquery easyui滚动条部分设置介绍
2013/09/12 Javascript
JavaScript字符串对象substr方法入门实例(用于截取字符串)
2014/10/16 Javascript
jQuery判断数组是否包含了指定的元素
2015/03/10 Javascript
解决bootstrap导航栏navbar在IE8上存在缺陷的方法
2016/07/01 Javascript
Angular ng-repeat指令实例以及扩展部分
2016/12/26 Javascript
最基础的vue.js双向绑定操作
2017/08/23 Javascript
vue通过路由实现页面刷新的方法
2018/01/25 Javascript
详解Webpack-dev-server的proxy用法
2018/09/08 Javascript
[53:20]2018DOTA2亚洲邀请赛 4.1 小组赛 A组加赛 VG vs OG
2018/04/03 DOTA
centos系统升级python 2.7.3
2014/07/03 Python
Python中用max()方法求最大值的介绍
2015/05/15 Python
Django+JS 实现点击头像即可更改头像的方法示例
2018/12/26 Python
Python super()方法原理详解
2020/03/31 Python
python用分数表示矩阵的方法实例
2021/01/11 Python
一家专门做特卖的网站:唯品会
2016/10/09 全球购物
《真想变成大大的荷叶》教学反思
2014/04/14 职场文书
金融管理专业求职信
2014/07/10 职场文书
党的群众路线对照检查材料
2014/09/22 职场文书
2014年保管员工作总结
2014/11/18 职场文书
工程服务质量承诺书
2015/04/29 职场文书
SONY AN-LP1 短波有源天线放大器
2021/04/22 无线电