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 相关文章推荐
dojo 之基础篇(三)之向服务器发送数据
Mar 24 Javascript
Extjs学习笔记之七 布局
Jan 08 Javascript
Javascript 浮点运算的问题分析与解决方法
Aug 27 Javascript
jquery组件使用中遇到的问题整理及解决
Feb 21 Javascript
javascript定义变量时有var和没有var的区别探讨
Jul 21 Javascript
javascript实现继承的简单实例
Jul 26 Javascript
JavaScript中获取纯正的undefined的方法
Mar 06 Javascript
jQuery树插件zTree使用方法详解
May 02 jQuery
Element-UI中Upload上传文件前端缓存处理示例
Feb 21 Javascript
利用Node.js如何实现文件循环覆写
Apr 05 Javascript
taro 实现购物车逻辑的实例代码
Jun 05 Javascript
vue点击Dashboard不同内容 跳转到同一表格的实例
Nov 13 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
发一个php简单的伪原创程序,配合商城采集用的
2010/10/12 PHP
php实现遍历多维数组的方法
2015/11/25 PHP
Netbeans 8.2与PHP相关的新特性介绍
2016/10/08 PHP
PHP读取zip文件的方法示例
2016/11/17 PHP
ThinkPHP防止重复提交表单的方法实例分析
2018/05/10 PHP
php进行md5加密简单实例方法
2019/09/19 PHP
javascript之大字符串的连接的StringBuffer 类
2007/05/08 Javascript
jQuery 事件队列调整方法
2009/09/18 Javascript
Riot.js 快速的JavaScript单元测试框架
2009/11/09 Javascript
javascript 类型判断代码分析
2010/03/28 Javascript
不同浏览器的怪癖小结
2010/07/11 Javascript
写了10年的Javascript也未必全了解的连续赋值运算
2011/03/25 Javascript
Jquery 的outerHeight方法使用介绍
2013/09/11 Javascript
jquery在项目中做复选框时遇到的一些问题笔记
2013/11/17 Javascript
修改或扩展jQuery原生方法的代码实例
2015/01/13 Javascript
js实现YouKu的漂亮搜索框效果
2015/08/19 Javascript
JS实现pasteHTML兼容ie,firefox,chrome的方法
2016/06/22 Javascript
Jquery 整理元素选取、常用方法一览表
2016/11/26 Javascript
JavaScript获取中英文混合字符串长度的方法示例
2017/02/04 Javascript
JS鼠标3次点击事件实现代码及扩展思路
2017/09/12 Javascript
vue-cli安装使用流程步骤详解
2018/11/08 Javascript
使用vant的地域控件追加全部选项
2020/11/03 Javascript
vue3+typeScript穿梭框的实现示例
2020/12/29 Vue.js
node.js 基于 STMP 协议和 EWS 协议发送邮件
2021/02/14 Javascript
Python数据结构之Array用法实例
2014/10/09 Python
Python基于Tkinter的HelloWorld入门实例
2015/06/17 Python
PyTorch读取Cifar数据集并显示图片的实例讲解
2018/07/27 Python
python opencv 实现对图像边缘扩充
2020/01/19 Python
Python networkx包的实现
2020/02/14 Python
在Tensorflow中实现leakyRelu操作详解(高效)
2020/06/30 Python
CSS3模块的目前的状况分析
2010/02/24 HTML / CSS
澳大利亚家具和家居用品在线商店:Interiors Online
2018/03/05 全球购物
计算机维护专业推荐信
2014/02/27 职场文书
保险经纪人求职信
2014/03/11 职场文书
世界气象日活动总结
2015/02/27 职场文书
创业计划书之面包店
2019/09/12 职场文书