jqGrid show an '用于行内编辑的图标
jqGrid show an 'edit' icon for in line editing
我使用带有内联编辑选项的jqGrid。如果单元格没有任何值,我想显示一个编辑图标。
所以我写了一个格式化器: function aFormatter(cellvalue, options, row) {
if(cellvalue == null){
return 'you can edit this';
}else{
return cellvalue;
}
}
显示you can edit this
文本,当我点击它时,正确显示输入框,但是输入框作为初始值you can edit this
?
我该如何修复它?
我通过struts 2 jquery tags plugin
使用jqGrid,这是建立在jqGrid版本
我认为你应该和格式化器一起定义非格式化器(unformat)。例如,
formatter: function (cellvalue) {
if (cellvalue == null) {
return "<span class='ui-icon ui-icon-pencil'></span>";
} else {
return cellvalue;
};
},
unformat: function (cellValue, options, elem) {
return $(elem).text();
}
我不确定如何在struts2网格插件中指定unformat
。
另一种方法是按以下方式定义格式化器
(function ($) {
"use strict";
/*jslint unparam: true */
$.extend($.fn.fmatter, {
yourFormatterName: function (cellValue, options) {
if (cellvalue == null) {
return "<span class='ui-icon ui-icon-pencil'></span>";
} else {
return cellvalue;
};
}
});
$.extend($.fn.fmatter.yourFormatterName, {
unformat: function (cellValue, options, elem) {
return $(elem).text();
}
});
}(jQuery));
它允许你使用formatter: "yourFormatterName"
(或者可能在struts2中使用formatter = "yourFormatterName"
),就像你可以使用标准格式化程序"integer"
, "date"
和其他一样。
这将在网格中显示一个"edit"图标而不是"you can edit This "
function aFormatter(cellvalue, options, row) {
if(cellvalue == null) {
return '<span class="ui-icon ui-icon-pencil"></span>'
} else {
return cellvalue;
}
}
相关文章:
- CKEditor Widget-阻止编辑可编辑元素本身
- Javascript更改图标
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- 高亮显示时编辑文本大小和颜色
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 将事件聚焦/模糊在可编辑内容的元素上
- 单击更改图标并通过javascript添加一个css类
- 我希望只有在我滚动页面后才能显示我的返回页首图标
- 编辑HTML表的源数据
- ExtJS网格单元格编辑器,防止焦点松动问题
- 如何在visualstudio中调试web api时编辑javascript文件
- 单击图标后编辑信息
- 我如何更改谷歌页面编辑器使用字体真棒图标
- CKEDITOR没有工具栏闪烁图标的内联编辑器
- 引导按钮与编辑文本和图标
- 内联编辑与图标在一边
- jqGrid show an '用于行内编辑的图标
- 鼠标在菜单项上的引导程序下拉菜单应在右侧显示编辑/删除图标
- 如何在鼠标悬停在特定文本上时显示编辑操作图标
- 如何在编辑标签时选择(-)图标,在Iphone ui自动化