JQuery easyui datagrid 单元格编辑时,使用浮动的textarea文本框并进行数据校验

查看原文:http://www.ibloger.net/article/412.html


有两种方式实现,一种方式是在html中验证,一种方式是在js中进行验证


方式一:

 <th data-options="filed:'remark',width:200,editor:{type:'textarea'}">备注</th> 

方式二:

<th data-options="filed:'remark',width:200,editor:{type:'textarea', options:{validType:'maxLength[150]'}}">备注</th>

// 长度校验
$.extend($.fn.validatebox.defaults.rules,{
	maxLength: {
  		validator: function(value, param){
  			if(value.length > param[0]){
  				return false;
  			}
  			return true;
  		},
  		message: "请输入的内容小于{0}个字符."
  	}
})   
// 解决datagrid中单击修改单元格时,textarea会自动将datagrid表格行撑大的问题
$.extend($.fn.datagrid.defaults.editors,{
	textarea: {
		init: function(container, options){
			// var input = $("<textarea class='datagrid-editable-input' style='position:absolute; padding:0px; margin-top:-12px; height:120px; resize:none;' data-options=\"required:true,validType:'maxLength[10]'\"></textarea>").validatebox(options).appendTo(container);
			var input = $("<textarea class='datagrid-editable-input' style='position:absolute; padding:0px; margin-top:-12px; height:120px; resize:none;'></textarea>").validatebox(options).appendTo(container);
		  		return input;
		  },
		getValue: function(target){
		  	return $(target).val();
		},
		setValue: function(target, value){
			$(target).val(value);
		},
		resize: function(target, width){
			var input = $(target);
		   	if($.boxModel == true){
			   input.width(width - (input.outerWidth() - input.width()));
		   	}else{
			   input.width(width);
			}
		}
	}
});



  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值