- 浏览: 50714 次
- 性别:
- 来自: 南京
最新评论
-
wuyizhong:
夏末忆逝 写道不兼容其他浏览器 忘记加上了,只在IE下试过。
完整的JSP实现打印预览、打印设置等功能demo -
夏末忆逝:
不兼容其他浏览器
完整的JSP实现打印预览、打印设置等功能demo
jqGrid的编辑——基础知识
使用jqGrid修改数据
jqGrid可以有三种方式,让我们来修改显示在jqGrid中的数据。这三种方式分别是:
Cell Editing——只允许修改某一个单元格内容.(所有图片均来自jqGrid的wiki或者jqGrid的Demo截图)
Inline Editing——允许在jqGrid中直接修改某一行的数据
Form Editing——弹出一个新的编辑窗口进行编辑和新增
暂时先不管这三种方式,我们来看看如何让一个jqGrid的数据能够进行编辑呢?
其实很简单,就是在jqGrid的colModel属性中,设置几个属性:
editable
可选值是true或者false,默认是false。用来说明这个列的数据是否可编辑。特别要注意的是,jqGrid的隐藏字段就算设置了这个属性为true,一样不能被编辑。在Cell Editing以及Inline Editing模式下,只能通过把这些字段设置为可见来修改。在Form Editing模式下,可以通过editoptions参数来设置是否可以修改隐藏列。
edittype
可选的值是'text', 'textarea', 'select', 'checkbox', 'password', 'button', 'image', 'file'以及'custom'。默认值是text。
根据名字就可以看出来,这个属性是设置编辑框的HTML样式的。比如,设置为text值,并且可以在editoptions中设置size以及maxlength等属性。这样生成的HTML样式有点类似<input type="text" size="10" maxlength="15"/>这样。
其中有几个要注意:
设置checkbox的时候,需要在editoptions中指定value值,第一个值应该是checked的时候的值。比如editoptions:{value:"Yes:No"}会设定这个checkbox编辑框,选中的时候,值是Yes,没选中的时候值是No。建议最好都设定一下这个值。
设置select的时候,editoptions中需要设定select下拉框的值。
一种方式是用字符串设置editoptions的value属性,像这样editoption: { value: “FE:FedEx; IN:InTime; TN:TNT” },这就为下拉框设置了三个可选值。注意,冒号前面的代表的是值,冒号后面代表的是显示值。
第二种方式是用对象来设置editoptions的value属性,这个时候,value值要用{}包括起来,像这样: editoptions:{value:{1:'One',2:'Two'}}。
第三种方式,是为editoptions设置dataUrl参数。意思就是select的值,是通过一个URL来获取的,比如一个Ajax请求的返回值。特别需要注意的是,在这种情况下,URL的返回值必须是包括select以及option这些HTML标签的。就像这样:<select><option value="1">One</option><option value="2">Two</option></select>.这种情况下,还可以在editoptions中设置是否允许多选,size等等。
设置image的时候,editoptions的src属性用来指定图片的地址。
custom类型就是通过一个函数来指定需要编辑的元素,并返回需要提交的值。
函数的定义在editoptions中说明,分别是custom_element用来指定哪一个函数用来创建编辑框,注意这里函数必须返回一个新的DOM元素,函数的参数一个是值Value,另外一个是colModel的editoptions值。
另外一个是custom_value,这个函数用来在编辑完成之后返回本编辑框的值,这个函数的参数是元素对象。大概的调用格式如下:
<script>
//创建一个input输入框
function myelem (value, options) {
var el = document.createElement("input");
el.type="text";
el.value = value;
return el;
}
//获取值
function myvalue(elem) {
return $(elem).val();
}
jQuery("#grid_id").jqGrid({
...
colModel: [
...
{name:'price', ..., editable:true, edittype:'custom', editoptions:{custom_element: myelem, custom_value:myvalue} },
...
]
...
});
</script>
editoptions
除了上面介绍的editoptions选项外,我们还可以设置defaultValue等等,更复杂的东西,比如dataEvents就不介绍了。
editrules
editrules是用来设置一些可用于可编辑列的colModel的额外属性的。大多数的时候是用来在提交到服务器之前验证用户的输入合法性的。比如editrules:{edithidden:true, required:true....}。
可选的属性包括:
edithidden:只在Form Editing模式下有效,设置为true,就可以让隐藏字段也可以修改。
required:设置编辑的时候是否可以为空(是否是必须的)。
number:设置为true,如果输入值不是数字或者为空,则会报错。
integer:
minValue:
maxValue:
email:
url:检查是不是合法的URL地址。
date:
time:
custom:设置为true,则会通过一个自定义的js函数来验证。函数定义在custom_func中。
custom_func:传递给函数的值一个是需要验证value,另一个是定义在colModel中的name属性值。函数必须返回一个数组,一个是验证的结果,true或者false,另外一个是验证错误时候的提示字符串。形如[false,”Please enter valid value”]这样。
自定义验证的例子:
<script>
function mypricecheck(value, colname) {
if (value < 0 && value >20)
return [false,"Please enter value between 0 and 20"];
else
return [true,""];
}
jQuery("#grid_id").jqGrid({
...
colModel: [
...
{name:'price', ..., editrules:{custom:true, custom_func:mypricecheck....}, editable:true },
...
]
...
});
</script> < function mypricecheck(value, colname) { if (value < 0 && value >20) return [false,"Please enter value between 0 and 20"]; else return [true,""]; } jQuery("#grid_id").jqGrid({ ... colModel: [ ... {name:'price', ..., editrules:{custom:true, custom_func:mypricecheck....}, editable:true }, ... ] ... }); // >
formoptions(只在Form Editing方式下有效),他的主要作用是用来重新排序Form中的编辑元素,同时可以在编辑元素前或者编辑元素后增加一些信息(比如,一些提示信息,或者一个红色的*表示必须要填写等等)。
可选的属性如下:
elmprefix:字符串值,如果设置了,则会在编辑框之后出现一些内容(可能是HTML的内容)
elmsuffix:字符串值,如果设置了,则会在编辑框之前出现一些内容(可能是HTML的内容)
label:字符串值,如果设置了,则这个值会替换掉colNames中的值出现作为该编辑框的标签显示
rowpos:数字值,决定元素行在Form中的位置(相对于文本标签again with the text-label)
colpos:数字值,决定元素列在Form中的位置(相对于标签again with the label)
两个编辑框可以有相同的rowpos值,但是colpos值不同,这会把这两个编辑框放到Form的同一行中。
特别注意:如果设置了rowpos以及colpos的值,强烈推荐为所有的其他编辑元素都设置这些值。
----本文只是doc文档的解释,没有太多自己的东西。
来自开源中国
发表评论
-
正则表达式 整数
2013-12-01 09:52 798^[1-9]\d*$ //匹配正 ... -
select 循环 attribute id does not accept any expressions
2013-12-01 09:52 832居然这样只写 解决了 <select name=&q ... -
DBeaver (mark一把)
2012-07-03 09:57 1132DBeaver 1.6 开源版本发布。开源许可为GPL(作者说 ... -
java中获取当前系统时间,日期并格式化输出
2012-07-03 09:57 1072一. 获取当前系统时间和日期并格式化输出: import j ... -
android EditText中inputType的属性列表
2012-07-03 09:57 1280android 1.5以后添加了软件虚拟键盘的功能,所以 ... -
Struts2单选按钮标签s:radio的使用及其设置默认值
2012-04-24 13:59 3614首先在页面中引入struts标签库: <%@ t ... -
java环境变量配置
2012-04-20 13:25 808JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路 ... -
colorbox
2012-04-19 15:39 972使用实例如下:一,使用ColorBox灯箱显示一张图片和 ... -
java caused by:java.sql.SQLException
2010-07-07 13:02 1582java.sql.SQLException: ORA- ... -
js获取浏览器信息
2010-12-20 08:52 737<body> <script type=& ... -
jQuery.datePicker日历插件
2011-01-10 19:00 1666此datePicker应非jQuery ui中的datepic ... -
解决eclipse-helios中Errors running builder JavaScript Validator的问题
2011-05-26 10:43 963Web项目在打开的时候,总是在验证的时候弹出错误:Errors ... -
jstl对Map,list的操作
2011-07-19 10:29 878//jstl对Map的操作 /**当forEach 的ite ... -
java 获取 google地址
2011-12-12 11:41 753private String getAddr(Stri ... -
使用方向键切换INPUT焦点之左右键补遗
2012-02-01 14:11 1197使用方向鍵切換INPUT焦點之左右鍵補遺兩年前曾在一個小專案實 ... -
struts2中s:select标签的使用
2012-04-17 14:28 9571.第一个例子:<s:select list=&q ... -
jquery如何实现过几秒消失的标签提示
2012-01-10 17:44 2599<head> <style> ... -
jquery如何实现过几秒消失的标签提示
2012-01-10 17:43 797<head> <style> ... -
Javascript跳转页面和打开新窗口等方法
2011-07-09 13:36 12531.在原来的窗体中直接跳转用 window.loc ... -
完整的JSP实现打印预览、打印设置等功能demo
2011-07-09 11:41 2501<%--一个完整的JSP实现打印预览、打印设 ...
相关推荐
jqGrid 提供了多种编辑模式,包括行内编辑(inline editing)、弹出式编辑(popup editing)和单击编辑(click-to-edit)。对于“一列编辑”,通常采用行内编辑,因为这样用户可以直观地看到数据变化。 1. 行内编辑...
jqGrid提供了丰富的功能,包括排序、筛选、分页以及行编辑等。在本例中,我们将深入探讨如何实现"jqgrid行编辑+动态为其他列赋值"这一功能。 首先,我们需要理解jqGrid的行编辑功能。jqGrid允许用户在表格的每一行...
jqGrid是一款功能强大的JavaScript表格插件,用于展示和操作数据,尤其在Web应用程序中用于数据的展示、编辑和管理。本文将深入解析jqGrid的编辑和添加功能,这对于需要实现前端数据操作的开发者来说是非常重要的。 ...
jqGrid是一款功能强大的JavaScript表格插件,主要用于网页数据的展示、编辑和管理。它基于jQuery库,提供了丰富的功能,如分页、排序、过滤、编辑、添加、删除和搜索等,使得网页上的表格操作变得更加便捷和高效。在...
### jqGrid表格数据呈编辑状态知识点详解 #### 一、jqGrid简介 jqGrid是一款功能强大的jQuery插件,用于在网页上实现数据网格展示。它不仅支持数据展示,还提供了丰富的交互功能,如排序、搜索、分页等,并且允许...
4. 编辑功能:JqGrid支持行内编辑、弹出式编辑和表单编辑等多种模式,方便用户对表格数据进行修改和保存。 5. 表格样式:JqGrid提供了多种内置主题,可以快速改变表格的外观,以适应不同设计风格的需求。此外,还...
2. **可编辑表格**:jqGrid 支持表格数据的编辑功能,用户可以直接在表格内修改单元格数据,提供单行编辑、多行编辑和弹出式编辑等多种模式,满足不同场景的需求。 3. **文件结构**: - `src`:源码目录,通常包含...
JqGrid提供行内编辑、弹出编辑和添加数据的功能。通过`editGridRow`、`addGridRow`方法启动编辑或添加操作。同时,`editParams`和`addParams`可以配置编辑和添加的参数,如确认对话框、提交处理函数等。 八、事件...
jQgrid中文文档API jQgrid是一个功能强大且流行的JavaScript插件,用于创建交互式表格。它基于jQuery库,提供了许多强大的功能,例如排序、过滤、编辑、分页等,使得开发者可以快速创建复杂的表格应用程序。本文将...
jqGrid 是一个强大的 jQuery 插件,用于创建交互式的、数据丰富的网格视图。这个插件支持多种功能,包括但不限于数据的增删改查、分页、排序、过滤和自定义格式化。在这个项目文件“RuanTai.Finance”中,我们将深入...
5. **编辑功能**:对于需要在线编辑的数据,jQGrid 支持行内编辑、弹出式编辑和批量编辑模式,用户可以直接在表格中修改数据并提交更改。 6. **行选择**:用户可以选择单行或多行数据,以便执行进一步的操作,如...
- 内置编辑模式:包括`inlineNav`(行内编辑导航栏)、`formEditing`(表单编辑)和`cellEditing`(单元格编辑)。 - 行内操作图标:通过`formatter`和`actions`列来添加编辑、删除、查看等操作图标。 - 自定义列头...
3. 编辑功能:jqGrid支持行内编辑、弹出式编辑和批量编辑模式,方便用户对数据进行添加、修改和删除操作。同时,它还提供了数据验证功能,确保输入的数据符合预设规则。 4. 高级特性:jqGrid5.5增加了如子网格、行...
jqGrid是基于jQuery库的表格插件,它提供了一套完整的解决方案,包括数据的加载、排序、筛选、分页、编辑以及格式化等。jqGrid支持多种数据源,如JSON、XML、HTML、CSV等,能够无缝集成到各种Web项目中。其核心功能...
JQGrid是一款强大的JavaScript表格插件,用于在Web应用中展示和管理数据。它提供了丰富的功能,包括列编辑、添加行和删除行等操作。在本文中,我们将深入解析JQGrid如何实现这些功能。 首先,JQGrid的初始化是通过...
6. **编辑和新增数据**:对于需要进行数据操作的场景,jqGrid支持行内编辑、弹出编辑窗口以及新增记录功能,方便用户进行数据的增删改查操作。 7. **本地化和多语言**:jqGrid允许设置语言选项,满足不同地区用户的...
jqGrid 提供丰富的功能,如数据分页、排序、过滤、编辑、导入导出等。在实际应用中,你可以根据项目需求选择合适的组件和配置,以实现高效的数据管理界面。通过深入理解 jqGrid 的 API 和各种选项,可以定制化地满足...
- 编辑与操作:jqGrid支持行内编辑,用户可以直接在表格中修改数据,还提供了添加、删除、保存和取消编辑的操作。 - 自定义列:开发者可以自定义列的显示样式、宽度和对齐方式,甚至可以添加自定义的列模板。 - ...
在"jqgrid celledit"的上下文中,我们主要关注的是jqGrid的单元格编辑功能,这是一个允许用户直接在表格中编辑单个单元格的数据的特性。这在处理动态数据和需要实时更新信息的Web应用程序中非常有用。 在jqGrid 4.0...