easyui的combobox同时实现多选和手写,以及剪切板复制datagrid表格数据

html代码:

后台传入的object.indexs是一个数组,在JS接受之后,是一个字符串,所以在赋值给combobox的时候需要手动分割成数组:

<s:select name="object.indexs" list="indexKeywordList" theme="simple" cssClass="__combobox"
     data-options="panelHeight:200" cssStyle="width:300px" multiple="true"/>
<input type="hidden" value="<s:property value="object.indexs"/>" id="myIndexWord"/>

JS代码:

var val = $('#myIndexWord').val();
$('.__combobox').combobox({
	onHidePanel:function(){
		var inputVal = $(this).next('span').children("input:eq(0)")[0].value;//下拉框的input框中显示值
		if(inputVal){
			var arr = inputVal.split(",");
			var newArr = new Array();
			for(var i = 0;i<arr.length;i++){
				if(arr[i].indexOf("[") != -1){
                    //下拉框的面板中的值的构成为:key-key[text],例如为:1-1[选项1],表示key为1,text为1[选项1]
				    arr[i] = arr[i].substring(0,arr[i].indexOf("["));//所以这里需要把"[]"去除,保存的时候设置的值为"[]"前面的值即可
				}
				newArr.push(arr[i].replace(/\s/g, ""));//去除空白字符
			}
		}
		$(this).combobox('setValues',newArr);//设置下拉框的values
		$(this).combobox('setText',inputVal);

    },
	onLoadSuccess:function(){
        //后台传入的数组在这里接受之后,已经是这种格式:[aaa,bbb],所以赋值的时候先要去除"[]"
		if(val){
			val = val.replace("[","").replace("]","");
			var valArray = val.split(",");
			var array = [];
			for(var i = 0;i<valArray.length;i++){
				array[i] = valArray[i];
			}
			$(this).combobox("setValues",array);
		}
	}
});

例如:

093955_ETQ8_2331760.png

附上一段项目中的easyui的datagrid的右键菜单"复制算式"到剪切板的代码:

if(rowData.opinion){
	if(window.clipboardData){  
		//IE  
		window.clipboardData.setData("text" , rowData.opinion);  
	}else{  
		function handler(event) {
			event.clipboardData.setData('text', rowData.opinion);
			document.removeEventListener('copy', handler, true);
			event.preventDefault();
	    }
		document.addEventListener('copy', handler, true);
		document.execCommand('copy');
	}
	$.easyui.messager.show({ icon: "info", msg: "剪切板复制算式成功!", position: "topCenter" ,timeout:3000});
}

 

 

转载于:https://my.oschina.net/u/2331760/blog/1785395

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值