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 相关文章推荐
取得父标签
Nov 14 Javascript
复制小说文本时出现的随机乱码的去除方法
Sep 07 Javascript
jQuery中add实现同时选择两个id对象
Oct 22 Javascript
js弹出模式对话框,并接收回传值的方法
Mar 12 Javascript
javascript代码运行不出来执行错误的可能情况整理
Oct 18 Javascript
javascript事件绑定学习要点
Mar 09 Javascript
Angularjs使用指令做表单校验的方法
Mar 31 Javascript
jQuery Autocomplete简介_动力节点Java学院整理
Jul 17 jQuery
详解在vue-cli中使用路由
Sep 25 Javascript
Postman模拟发送带token的请求方法
Mar 31 Javascript
BootstrapValidator验证用户名已存在(ajax)
Nov 08 Javascript
vue项目打包后请求地址错误/打包后跨域操作
Nov 04 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
Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
2013/06/14 PHP
PHP版本升级到7.x后wordpress的一些修改及wordpress技巧
2015/12/25 PHP
php 实现301重定向跳转实例代码
2016/07/18 PHP
PHP请求Socket接口测试实例
2016/08/12 PHP
php 使用 __call实现重载功能示例
2019/11/18 PHP
Jquery中Ajax 缓存带来的影响的解决方法
2011/05/19 Javascript
js jquery数组介绍
2012/07/15 Javascript
限制上传文件大小和格式的jQuery插件实例
2015/01/24 Javascript
JavaScript中的Repaint和Reflow用法详解
2015/07/27 Javascript
简单纯js实现点击切换TAB标签实例
2015/08/23 Javascript
js简单倒计时实现代码
2016/04/30 Javascript
JS求解三元一次方程组值的方法
2017/01/03 Javascript
vue组件实例解析
2017/01/10 Javascript
vue中如何引入jQuery和Bootstrap
2017/04/10 jQuery
浅谈JavaScript中的属性:如何遍历属性
2017/09/14 Javascript
详解使用vue-cli脚手架初始化Vue项目下的项目结构
2018/03/08 Javascript
详解promise.then,process.nextTick, setTimeout 以及 setImmediate的执行顺序
2018/11/21 Javascript
vue.js高德地图实现热点图代码实例
2019/04/18 Javascript
elementUI table表格动态合并的示例代码
2019/05/15 Javascript
ES6 class的应用实例分析
2019/06/27 Javascript
js正则匹配多个全部数据问题
2019/12/20 Javascript
记一次react前端项目打包优化的方法
2020/03/30 Javascript
antd Form组件方法getFieldsValue获取自定义组件的值操作
2020/10/29 Javascript
Python中请使用isinstance()判断变量类型
2014/08/25 Python
Python利用递归和walk()遍历目录文件的方法示例
2017/07/14 Python
Python 从一个文件中调用另一个文件的类方法
2019/01/10 Python
python五子棋游戏的设计与实现
2019/06/18 Python
python定时截屏实现
2020/11/02 Python
Araks官网:纽约内衣品牌
2020/10/15 全球购物
成语的广告词
2014/03/19 职场文书
公司廉洁自律承诺书
2014/03/27 职场文书
校长创先争优承诺书
2014/08/30 职场文书
生产现场禁烟通知
2015/04/23 职场文书
积极心理学课程心得体会
2016/01/22 职场文书
深入理解python多线程编程
2021/04/18 Python
python执行js代码的方法
2021/05/13 Python