Flexigrid例子二: 原位编辑器
有时候,我们想要编辑flexigrid里的数据。一个原位编辑器是需要的,现在不需要再弹出一个对话框了。这里我会展示如何做到这点。
我使用了jquery-in-place-editor库。请参考官方站点:http://code.google.com/p/jquery-in-place-editor/
step1: 在定义flexigrid模型的时候,添加一个函数来处理flexigrid的列
- $(document).ready ( function() {
- $("#displays").flexigrid (
- {
- url: '<%=jsonp%>/bindedDisplays',
- method:'POST',
- dataType: 'json',
- width: 400,
- height: 300,
- colModel : [
- {hide: '<%=check%>', name: 'check', width: 30, sortable: true, align: 'left'},
- {display: 'ID', name: 'id', width: 90, sortable: true, align: 'left'},
- {display: '<%=description%>', name: 'description', width: 110, sortable: true, align: 'left',process:editDescription},
- {display: '<%=status%>', name: 'status', width: 20, sortable: true, align: 'left'},
- {display: '<%=unbind%>', name: 'unbind', width: 20, sortable: true, align: 'left',process:unbindDisplay}
- ]
- }
- );
- }
- );
$(document).ready ( function() {
$("#displays").flexigrid (
{
url: '<%=jsonp%>/bindedDisplays',
method:'POST',
dataType: 'json',
width: 400,
height: 300,
colModel : [
{hide: '<%=check%>', name: 'check', width: 30, sortable: true, align: 'left'},
{display: 'ID', name: 'id', width: 90, sortable: true, align: 'left'},
{display: '<%=description%>', name: 'description', width: 110, sortable: true, align: 'left',process:editDescription},
{display: '<%=status%>', name: 'status', width: 20, sortable: true, align: 'left'},
{display: '<%=unbind%>', name: 'unbind', width: 20, sortable: true, align: 'left',process:unbindDisplay}
]
}
);
}
);
step2: 使用jquery-in-place-editor来实现editDescription函数
- function editDescription(celDiv, id){
- $( celDiv ).click( function() {
- var idTd = $(celDiv).parent().parent().children()[1];
- $(celDiv).editInPlace({
- url: "update_description",
- params: "address="+$(idTd.children).html(),
- error:function(obj){
- alert(JSON.stringify(obj));
- },
- success:function(obj){
- var str = m[JSON.parse(obj).status+""][window.curLanguage];
- alert(str);
- $("#displays").flexReload();
- }
- });
- });
- }
function editDescription(celDiv, id){
$( celDiv ).click( function() {
var idTd = $(celDiv).parent().parent().children()[1];
$(celDiv).editInPlace({
url: "update_description",
params: "address="+$(idTd.children).html(),
error:function(obj){
alert(JSON.stringify(obj));
},
success:function(obj){
var str = m[JSON.parse(obj).status+""][window.curLanguage];
alert(str);
$("#displays").flexReload();
}
});
});
}
$(celDiv).editInPlace 会让你在web界面上看到原位编辑的效果。
Ajax请求会通过jquery-in-place-editor发到web server的update_description路径上。
非常简单,你当然也需要引入必要的js文件,像这样:
- <script type="text/javascript" src="script/jquery.editinplace.js"></script>
<script type="text/javascript" src="script/jquery.editinplace.js"></script>
原文链接:http://blog.csdn.net/sheismylife/article/details/7908611
Flexigrid例子二: 原位编辑器的更多相关文章
- scrapy-splash抓取动态数据例子二
一.介绍 本例子用scrapy-splash抓取一点资讯网站给定关键字抓取咨询信息. 给定关键字:打通:融合:电视 抓取信息内如下: 1.资讯标题 2.资讯链接 3.资讯时间 4.资讯来源 二.网站信 ...
- Quartz1.8.5例子(二)
/* * Copyright 2005 - 2009 Terracotta, Inc. * * Licensed under the Apache License, Version 2.0 (the ...
- Linux学习笔记之十二————vim编辑器的分屏操作
一.分屏操作: sp: 上下分屏,后可跟文件名 vsp: 左右分屏,后可跟文件名 Ctr+w+w: 在多个窗口切换 二.启动分屏: 1.使用大写O参数进行垂直分屏 $ vim -On file1 fi ...
- Python例子二
例1.构造函数 #-*-coding:utf--*- import sys class Student: def __init__(self,name,age): self.__name=name s ...
- go例子(二) 使用go语言实现数独游戏
例子托管于github example.go package main import ( "./sudoku" ) func main() { //var smap ...
- 从零开始学习Node.js例子二 文本提交与显示
index.js var server = require("./server"); var router = require("./router"); var ...
- C#解析XML 例子二
<checkResult> <item> <fmId>XX0001</fmId> <fmItemId>20000RT</fmItemI ...
- [原][osg][QT]osg与QT界面结合的简单例子二
//main.cpp #include "VREObliqueEditorQTWindow.h" #include <QtWidgets/QApplication> # ...
- Libevent例子(二)
服务端 #include<netinet/in.h> #include<stdio.h> #include<string.h> #include<event. ...
随机推荐
- NFC会员管理-转载自http://technews.cn/2014/09/13/nfc-sticker/
基隆的百年名店“李鹄饼店”误用馊水油,客人纷纷上门退货,因退货条件宽松,客人一货两退,造成巨大的损失.为了平息客人的愤怒,店家允许客人凭发 票或商品办理退货,有的客人先用发票退一次钱,再用商品退一次钱 ...
- Oracle监听启动失败问题
1. C:\Users\10188535.ZTE>lsnrctl start LISTENER LSNRCTL for 32-bit Windows: Version 11.2.0.1.0 - ...
- GitHub简单使用入门
自从google code关闭了下载服务了之后,GitHub作为了目前最好用的免费开源项目托管站点,众多开源项目都托管在github,其中不乏著名的播放器MPC-HC. 不习惯于英文的朋友,难免少不了 ...
- SPOJ #11 Factorial
Counting trailing 0s of n! It is not very hard to figure out how to count it - simply count how many ...
- rails里routes配置文件里的resources和resource的区别
抄自 http://stackoverflow.com/questions/11356146/difference-between-resource-and-resources-in-rails-ro ...
- 基于session的简易购物车引发的问题
一.功能描述: 页面如下所示: 运行报错: java.io.FileNotFoundException: E:\apache-tomcat-8.0.37\work\Catalina\localhos ...
- ultraedit15.00.0.1046注册码
ultraedit注册码,版本:15.00.0.1043·········· 用户名 MAYBELOVE 注册码 LFKKM-KIMMX-OSFEB-PMISO-ELILS-IIIHO-KKHLR ...
- 【MySQL】性能优化 之 延迟关联
[背景] 某业务数据库load 报警异常,cpu usr 达到30-40 ,居高不下.使用工具查看数据库正在执行的sql ,排在前面的大部分是: SELECT id, cu_id, name, in ...
- ACL权限设置使用
acl操作 # 查看操作的分区支不支持acldumpe2fs -h /dev/sda2 | grep aclDefault mount options: user xattr acl 代表支持acl如 ...
- PLSQL_基础系列02_分组函数GROUP BY / ROLLUP / CUBE(案例)
2014-11-30 Created By BaoXinjian