propertygrid在其属性面板中加载json对象带函数的属性或者事件

2024-04-29 20:32

本文主要是介绍propertygrid在其属性面板中加载json对象带函数的属性或者事件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

如何在propertygrid的url加载json对象带函数的属性或者事件?

由于propertygrid的url加载json对象时,会将里面的属性或者事件所对应的函数解析成字符串,所以这需要处理该函数字符串为函数或者事件集合。

代码如下:

xxx.json:

{"name":"<span title='method'>请求方式</span>","proname":"method","value":"post","group":"easyui属性",
"editor":{"type":"combobox",
"options":{"data":[{"value":"post","text":"post"},{"value":"get","text":"get"}],
"valueField":"value","textField":"text",
"keyHandler":"{up: function(){},down: function(){},enter: function(){var falg='method';comboboxClass.getInput(this,falg);},query: function(q){}}"
}}},

xxx.js:

//加载属性面板
$('#component_pg').propertygrid({  
url: "components/"+$(this).attr("component_id")+".json",  
scrollbarSize: 0,
showGroup:true,
groupFormatter:function(group,rows){
if(group=="easyui属性"){
for(var i=0;i<rows.length;i++){
if(rows[i].editor.type&&rows[i].editor.type=="combobox"){
if(rows[i].editor.options.keyHandler){
var test=rows[i].editor.options.keyHandler;
var json = eval('(' + test + ')');
rows[i].editor.options.keyHandler=json;
/*var f2=(new Function("return "+test))();
rows[i].editor.options.keyHandler=f2;*/
 }}}return "easyui属性";
}
else if(group=="html属性"){
return "html属性";
}
else if(group=="样式属性"){
return "样式属性";
}
}});  
var comboboxClass = (function(){
return {
getInput:function(obj,falg){
var q=$("span[title='"+falg+"']").parent().parent().next().children().find('input.textbox-text').val();
if(q!=''){
var datas = $(obj).combobox('options').data;
var addcloum={text:q,value:q};
datas.push(addcloum);
$(obj).combobox('loadData',datas);
$(obj).combobox('setValue',q);
}
}
};
}());


最后运行图:



这篇关于propertygrid在其属性面板中加载json对象带函数的属性或者事件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/947085

相关文章

Python lambda函数(匿名函数)、参数类型与递归全解析

《Pythonlambda函数(匿名函数)、参数类型与递归全解析》本文详解Python中lambda匿名函数、灵活参数类型和递归函数三大进阶特性,分别介绍其定义、应用场景及注意事项,助力编写简洁高效... 目录一、lambda 匿名函数:简洁的单行函数1. lambda 的定义与基本用法2. lambda

Python 函数详解:从基础语法到高级使用技巧

《Python函数详解:从基础语法到高级使用技巧》本文基于实例代码,全面讲解Python函数的定义、参数传递、变量作用域及类型标注等知识点,帮助初学者快速掌握函数的使用技巧,感兴趣的朋友跟随小编一起... 目录一、函数的基本概念与作用二、函数的定义与调用1. 无参函数2. 带参函数3. 带返回值的函数4.

MySQL中DATE_FORMAT时间函数的使用小结

《MySQL中DATE_FORMAT时间函数的使用小结》本文主要介绍了MySQL中DATE_FORMAT时间函数的使用小结,用于格式化日期/时间字段,可提取年月、统计月份数据、精确到天,对大家的学习或... 目录前言DATE_FORMAT时间函数总结前言mysql可以使用DATE_FORMAT获取日期字段

javaSE类和对象进阶用法举例详解

《javaSE类和对象进阶用法举例详解》JavaSE的面向对象编程是软件开发中的基石,它通过类和对象的概念,实现了代码的模块化、可复用性和灵活性,:本文主要介绍javaSE类和对象进阶用法的相关资... 目录前言一、封装1.访问限定符2.包2.1包的概念2.2导入包2.3自定义包2.4常见的包二、stati

Django中的函数视图和类视图以及路由的定义方式

《Django中的函数视图和类视图以及路由的定义方式》Django视图分函数视图和类视图,前者用函数处理请求,后者继承View类定义方法,路由使用path()、re_path()或url(),通过in... 目录函数视图类视图路由总路由函数视图的路由类视图定义路由总结Django允许接收的请求方法http

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

Python进行JSON和Excel文件转换处理指南

《Python进行JSON和Excel文件转换处理指南》在数据交换与系统集成中,JSON与Excel是两种极为常见的数据格式,本文将介绍如何使用Python实现将JSON转换为格式化的Excel文件,... 目录将 jsON 导入为格式化 Excel将 Excel 导出为结构化 JSON处理嵌套 JSON:

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

详解MySQL中JSON数据类型用法及与传统JSON字符串对比

《详解MySQL中JSON数据类型用法及与传统JSON字符串对比》MySQL从5.7版本开始引入了JSON数据类型,专门用于存储JSON格式的数据,本文将为大家简单介绍一下MySQL中JSON数据类型... 目录前言基本用法jsON数据类型 vs 传统JSON字符串1. 存储方式2. 查询方式对比3. 索引