Easyui datagrid 扩展单元格textarea editor

简介: Easyui datagrid 扩展单元格textarea editor

datagrid 扩展单元格textarea editor


 

测试环境

jquery-easyui-1.5.3

 

问题描述

如下,在没有扩展的情况下,初始化如下

 

手动拖拽,拖拽时一边往右侧拖拽,结果如下,上图那个拖拽图标被隐藏了。停止拖拽后无法再次拖拽

 

解决方案

扩展textarea 编辑器

函数说明

函数        参数                  描述

init       container, options   初始化编辑器并且返回目标对象。

 

destroy    target                如果必要就销毁编辑器。

 

getValue   target                从编辑器中获取值

 

setValue   target , value       给编辑器设置值。

 

resize     target , width       如果必要就调整编辑器的尺寸。

 

代码实现

// 扩展textarea编辑器,以控制“拖拽”行为等

$.extend($.fn.datagrid.defaults.editors, {

textarea: {  // 调用名称    

       init : function(container, options) {  

          //container 用于装载编辑器 options,提供编辑器初始参数

          //这里把一个渲染成easyui-editable-input的textarea输入控件添加到容器container中,

          //需要时用传入options, 这样调用 input.textarea(options)

         var input = $('').appendTo(container);  

           return input;  

       },  

       getValue : function(target) {  

           return $(target).val();  

       },  

       setValue : function(target, value) {  

           $(target).val(value);  

       },  

       resize : function(target, width) {  

           //列宽改变后调整编辑器宽度

           var input = $(target);  

           //Query.boxModel属性用于检测浏览器是否使用标准盒模型渲染当前页面。标准模式返回true,否则返回false。

           if ($.boxModel == true) {  

               input.width(width - (input.outerWidth() - input.width()) - 10);  

           } else {  

               input.width(width-10);  

           }  

       }  

}      

});  

 

 

在定义表格thead时引用编辑器

请求头

 

说明:width - 10 是为了让拖拽后,还显示下图圈选的拖拽图标,如果不减去个适当的宽度,形如width - (input.outerWidth() - input.width()),那么拖拽后,将看不到拖拽标识。

 

 

style="resize:vertical;height:200px" 设置拖拽只能纵向拖拽(如果支持横向拖拽则依旧会出现拖拽标识被隐藏,停止拖拽后无法再次拖拽的情况),默认编辑框高度 200px,如下高度

 

resize 可选值:

none 用户无法调整元素的尺寸。

both 用户可调整元素的高度和宽度。

horizontal 用户可调整元素的宽度。

vertical 用户可调整元素的高度

 

关于宽度的计算结果值,参考下图

 

 

参考链接:

http://www.w3school.com.cn/cssref/pr_resize.asp

https://www.cnblogs.com/yfrs/p/4980934.html

https://www.oschina.net/code/snippet_571282_34699

 

目录
相关文章
|
7月前
EasyUI datagrid 从左至右递归合并表格
EasyUI datagrid 从左至右递归合并表格
41 2
|
7月前
EasyUI DataGrid 假分页
EasyUI DataGrid 假分页
71 0
|
2月前
|
Web App开发 JavaScript 前端开发
用来用去还是用回了ueditor-Vue富文本编辑器二次扩展
用来用去还是用回了ueditor-Vue富文本编辑器二次扩展
44 11
|
2月前
|
存储 移动开发 小程序
uniapp富文本editor输入二次扩展兼容微信小程序
uniapp富文本editor输入二次扩展兼容微信小程序
89 0
|
4月前
|
开发者 图形学 开发工具
Unity编辑器神级扩展攻略:从批量操作到定制Inspector界面,手把手教你编写高效开发工具,解锁编辑器隐藏潜能
【8月更文挑战第31天】Unity是一款强大的游戏开发引擎,支持多平台发布与高度可定制的编辑器环境。通过自定义编辑器工具,开发者能显著提升工作效率。本文介绍如何使用C#脚本扩展Unity编辑器功能,包括批量调整游戏对象位置、创建自定义Inspector界面及项目统计窗口等实用工具,并提供具体示例代码。理解并应用这些技巧,可大幅优化开发流程,提高生产力。
429 1
|
7月前
|
IDE 持续交付 vr&ar
Unity编辑器扩展
Unity编辑器扩展
|
7月前
|
存储 搜索推荐 C#
Unity编辑器扩展
Unity编辑器扩展
50 0
|
7月前
|
JavaScript 前端开发
EasyUi js 加载数据表格DataGrid
EasyUi js 加载数据表格DataGrid
|
7月前
|
前端开发
easyui datagrid 的 tip实现
easyui datagrid 的 tip实现
175 0
|
7月前
|
JSON 监控 数据格式
Easy UI datagrid的学习
Easy UI datagrid的学习