最近在做后台功能开发的时候,用到对排序字段的修改,感觉只为了修改一个排序值,而要重新进入编辑页比较麻烦,于是自己动手写……

  最近在做后台功能开发的时候,用到对排序字段的修改,感觉只为了修改一个排序值,而要重新进入编辑页比较麻烦,于是网上找点资料自己动手写了一个jquery双击实现直接修改排序值的效果:

  html代码:

<div title="【双击可直接修改】" class="changeSort" id="{$id}">{$sort}</div>

  JS代码:

<script type="text/javascript">
//双击修改排序
$('.changeSort').dblclick(function(){
var url = "{:U('setSort')}";
var td = $(this);
var id = td.attr('id');
var text = td.text();
var txt = $("<input type='text' class='input-small' >").val(text);
txt.blur(function(){
// 失去焦点,保存值。于服务器交互自己再写,最好ajax
var newText = $(this).val();
$.ajax({
url:url,
type:'POST',
data:{'tid':id,'sort':newText},
dataType:'json',
success:function(res){
if(res.flag==1){
layer.msg(res.msg);
// 移除文本框,显示新值
$(this).remove();
td.text(newText);
}else if(res.flag==3){
layer.msg(res.msg);
txt.val(newText);
}
}
}); });
td.text("");
td.append(txt);
});
</script>

  PHP代码:

<?PHP
/**
* ajax 设置排序值
*/
public function setSort(){
if(IS_POST){
$tid = I('post.tid');
$sort = I('post.sort');
if(!is_numeric($sort)){
$arr = array(
'flag'=>3,
'msg'=>'请输入数字',
'link'=>'',
'content'=>''
);
$this->ajaxReturn($arr);
}
$data = array(
'id'=>$tid,
'sort'=>$sort
);
$this->mod_sort = M('Sort');
$res = $this->mod_sort->save($data);
if($res){
$arr = array(
'flag'=>1,
'msg'=>'排序值设置成功',
'link'=>'',
'content'=>''
);
}else{
$arr = array(
'flag'=>2,
'msg'=>'排序值设置失败',
'link'=>'',
'content'=>''
);
}
}else{
$arr = array(
'flag'=>0,
'msg'=>'请求非法!',
'link'=>'',
'content'=>''
);
}
$this->ajaxReturn($arr);
}
?>

效果如下图:

图(1)

图(2)

本文转载自都市菜鸟

JQUERY、AJAX双击DIV,直接修改DIV内的内容的更多相关文章

  1. (局部刷新)jquery.ajax提交并实现单个div刷新

    web开发中我们经常会遇到局部刷新页面的需求,以前我经常使用ajax和iframe实现局部刷新,后来做政府的项目,对页面的样式要求比较多,发现使用iframe控制样式什么的很麻烦,所以就采用了新的办法 ...

  2. javascript 获取 class 样式 重新赋值class样式 为div等系列标签内更改内容

    name = document.getElementById(project_not_through_id).className;                     // 获取目标id的 cla ...

  3. JQuery ajax 把后台返回的List数据 遍历出来 赋值给div

    1.效果 2.前端代码 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <he ...

  4. 基于Ajax+div的“左边菜单、右边内容”页面效果实现

    效果演示: ①默认页面(index.jsp): ②:点击左侧 用户管理 标签下的 用户列表 选项后,右边默认页面内容更新为用户列表页(userList.jsp)的内容 : ③:同理,点击 产品管理.订 ...

  5. 利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能

    原文:利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能 利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能1.在界面上添加几个checkbox和一 ...

  6. jquery点击非div区域隐藏div

    点击非div区域隐藏div,如图,点击圆的头像(.person-msg)弹出白色底框(.person-centre).点击圆头像以外的区域隐藏白色底框

  7. JQ方法实用案例///鼠标移动到div和修改ipt中弹窗、CSS鼠标变小手、JQ获取元素属性、JQ选择器

    今天学习了jQ,jQ对js的帮助很大,菜鸟教程上也有属性.可以查看 js 和 jquery主要的区别 在 dom    想用jquery  必须先引入(顺序问题)        先css 再js:   ...

  8. js修改div标签中的内容

    <div id='divId'>初始文字</div> <script> $(document).ready(function(e){ $('#divId').htm ...

  9. jquery实现可拖拽的div

    由于项目中并未引入前端开发框架easyui.ext.没有现成的控件可以使用,今天时间算是充裕的时候,自己写了一个可以拖拽.放大缩小的例子.欢迎大家指正. 不啰嗦,上代码: 依赖的文件:jquery.j ...

随机推荐

  1. Learn Objectvie-C on the Mac 2nd Edition 笔记

    Chapter 1Apple’s Cocoa (for OS X) 和 Cocoa Touch (for iOS) toolkits 都是用 Objective-C写的. Chapter 2 (1)  ...

  2. 安装完出现Deprecated: Function ereg_replace() is deprecated in

    php5.3说明   先不要用php5.3吧,毕竟目前版本要修改这个工作量太大,而且可能会有很多未知错误,这只能在下一版全部改用perl的正则了,都不明白php官方发 什么神经,此外不支持应该是直接屏 ...

  3. Border - SGU 133(排序)

    题目大意:有N对区间现在剔除一些区间,这些区间被另一些区间完全包含,如,Ai<Bi, Bj<Aj, A完全包含B,求出来这样被包含的区间个数. 分析:首先按照第一个数字先进行一下排序,然后 ...

  4. XML文件操作指南

    一.XML简介 XML的全名是eXtensible Markup Language(可以扩展的标记语言),它的语法类似HTML,都是用标签来描述数据.HTML的标签是固定的,我们只能使用.不能修改: ...

  5. linux —— shell 编程(编程语法)

    导读 本文为博文linux —— shell 编程(整体框架与基础笔记)的第4小点的拓展.(本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 再识变量 函数 条件语句 循环语句 ...

  6. Javascript诞生与历史

    基本常识 Brendan Eich在1995年4月入职Netscape Communications Corporation(网景通信公司).并于1995年5月用10天时间发明了Javascript. ...

  7. php异步请求模拟多进程

    在A请求页面发起另一个B页面请求 不需要等待B页面执行结束再返回 直接往下执行A页面的请求 A页面代码 <?php $url = 'http://'.$_SERVER['HTTP_HOST']. ...

  8. 基于JAX-WS的Web Service服务端/客户端 ;JAX-WS + Spring 开发webservice

    一.基于JAX-WS的Web Service服务端/客户端 下面描述的是在main函数中使用JAX-WS的Web Service的方法,不是在web工程里访问,在web工程里访问,参加第二节. JAX ...

  9. poj 3294 Life Forms(后缀数组)

    题意:给你最多100个字符串,求最长的且是一半以上的字符串的公共子串,如果有多个,按字典序输出. 思路:先把各个串拼起来,中间加上一个之前未出现过的字符,然后求后缀.然后根据h数组和sa数组,求出最长 ...

  10. Servlet 第六课: Session的使用

    课程目标: 通过这节课,我们能够学会加入session,学会调用session,以及大概懂得session存在的情况. 课程具体: 1.Session仅仅是存在于浏览器.比方我们打开浏览器获得我们所须 ...