el-table数据转化为json后如何转换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了el-table数据转化为json后如何转换相关的知识,希望对你有一定的参考价值。
非常感谢您的提问。如果您想将el-table中的数据转换为JSON格式,可以使用以下步骤:1. 获取el-table中的数据:您可以使用el-table组件提供的API方法,如getTableData()来获取表格中的数据。
2. 将数据转换为JSON格式:您可以使用JSON.stringify()方法将数据转换为JSON格式的字符串。
3. 处理JSON数据:您可以使用javascript的JSON对象来处理JSON数据,例如解析JSON数据、访问JSON数据等。
需要注意的是,如果您的el-table中的数据是从后端获取的,那么您需要先将数据转换为JavaScript对象,然后再将其转换为JSON格式。
总之,将el-table中的数据转换为JSON格式并不难,只需要掌握一些基本的JavaScript知识即可。希望我的回答能够对您有所帮助。如果您还有其他问题,欢迎随时向我提问。 参考技术A <table>表数据转Json格式的javascript函数如下
<script>
varkeysArr=newArray("key0","key1","key2");
functionTableToJson(tableid)//tableid是你要转化的表的表名,是一个字符串,如"example"
varrows=document.getElementById(tableid).rows.length;//获得行数(包括thead)
varcolums=document.getElementById(tableid).rows[0].cells.length;//获得列数
varjson="[";
vartdValue;
for(vari=1;i<rows;i++)//每行
json+="";
for(varj=0;j<colums;j++)
tdName=keysArr[j];//Json数据的键
json+=""";//加上一个双引号
json+=tdName;
json+=""";
json+=":";
asp.net 如何转化json数据为对象
date:'2012-04-12',list:[uid:'11111111',amount:'1000',game_name:'龙将',uid:'2222222',amount:'2000',game_name:'火影世界']
我需要把这些充值数据 插入到数据库
///这个方法用来初始化一个实体,将实体的数字型类型设置为-99999,字符串设置为
///null,日期类型设置为newDateTime()
///</summary>
///<typeparamname="T">需要处理的类型</typeparam>
///<paramname="entity">需要初始化的对象</param>
///<returns>返回处理完毕后的对象</returns>
publicstaticTInitialize<T>(Tentity)whereT:class
PropertyInfo[]props=entity.GetType().GetProperties();
foreach(PropertyInfopinprops)
if(p!=null)
Typet=p.PropertyType;
//不处理布尔类型
//if(!t.IsValueType&&t==typeof(bool))
//
//continue;
//if(t==typeof(int)||t==typeof(double)||t==typeof(float)||t==typeof(int?)||t==typeof(double?)||t==typeof(float?))
p.SetValue(entity,-99999,null);
if(t==typeof(decimal)||t==typeof(decimal?))
p.SetValue(entity,Convert.ToDecimal(-99999),null);
if(t==typeof(string))
p.SetValue(entity,null,null);
if(t==typeof(DateTime?)||t==typeof(DateTime))
p.SetValue(entity,newDateTime(),null);
returnentity;
///<summary>
///这个方法是根据传入的IEnumerable《T》的集合类型,
///转换为json对象集合字符串
///</summary>
///<typeparamname="T">需要转换成的类型</typeparam>
///<paramname="list">待转换的数据集合</param>
///<returns>返回json格式字符串</returns>
publicstaticstringConvertListToJson<T>(IEnumerable<T>list)whereT:new()
intstart1;
Tobj=newT();
System.Text.StringBuildersb=newStringBuilder("[");
Typetype=obj.GetType();//得到T的类型
PropertyInfo[]props;//=type.GetProperties(BindingFlags.Public|BindingFlags.Instance);
foreach(variteminlist)
//出了循环之后,需要将这个字符串的最后一个逗号去掉
sb.Append(EntityHelper.ConvertObjectToJson<T>(item));
sb.Append(",");
//整个集合处理完毕之后,需要将最后一个,去除
start1=sb.ToString().LastIndexOf(",");
if(start1!=-1)
sb.Remove(start1,1);//去除最后一个,
sb.Append("]");
returnsb.ToString();
///<summary>
///这个方法是根据传入的IEnumerable《T》的集合类型,
///转换为EasyUIDataGridjson对象集合字符串
///对应的EasyUi版本为1.2.3
///</summary>
///<typeparamname="T">需要转换成的类型</typeparam>
///<paramname="list">待转换的数据集合</param>
///<returns>返回json格式字符串</returns>
///
[Obsolete("这个方法不建议使用,方法已过期",true)]
publicstaticstringConvertListToEasyUIDataGridJson<T>(IEnumerable<T>list,intrecordcount)whereT:new()
intstart1;
Tobj=newT();
System.Text.StringBuildersb=newStringBuilder("[");
Typetype=obj.GetType();//得到T的类型
PropertyInfo[]props;//=type.GetProperties(BindingFlags.Public|BindingFlags.Instance);
intcount=0;//计数器
foreach(Ttinlist)
count++;
props=t.GetType().GetProperties();//得到这个对象的所有属性
ColumnAttributecolumnAttr;
object[]objs;
//开始遍历这个对象的所有属性
sb.Append("");
foreach(PropertyInfopropinprops)
objs=prop.GetCustomAttributes(typeof(ColumnAttribute),false);//得到自定义特性
stringcolumnname="";//定义变量,表示json对象中某个属性名
objectvalue="";//定义变量,表示json对象中某个属性值
if(objs.Count()>0)
columnAttr=objs[0]asColumnAttribute;//得到自定义columnAttribute对象
//如果取到值了
if(columnAttr!=null)
columnname=columnAttr.Storage.Substring(1);//得到属性名
value=prop.GetValue(t,null);//获得这个属性值
if(value==null)
sb.Append("\""+columnname+"\""+":null,");
else
//if(valueisstring||valueisDateTime)
//
stringstr=value.ToString();str=str.Replace("\r\n","\\r\\n").Replace("\'","‘").Replace("\n","\\n").Replace("\r","\\r");
sb.Append("\""+columnname+"\""+":\""+str+"\",");
//
//else
//
//sb.Append(columnname+":"+value+",");
//
//出了循环之后,需要将这个字符串的最后一个逗号去掉
start1=sb.ToString().LastIndexOf(",");
if(start1!=-1)
sb.Remove(start1,1);//去除最后一个,
sb.Append(",");
//整个集合处理完毕之后,需要将最后一个,去除
start1=sb.ToString().LastIndexOf(",");
if(start1!=-1)
sb.Remove(start1,1);//去除最后一个,
sb.Append("]");
//returnsb.ToString();
stringhead=string.Format("0\"total\":\"1\",\"rows\":","",recordcount);
stringjson=head+sb.ToString()+"";
returnjson;
///<summary>
///将一个对象转换为json格式字符串
///</summary>
///<typeparamname="T"></typeparam>
///<paramname="target"></param>
///<returns></returns>
publicstaticstringConvertObjectToJson<T>(objecttarget)whereT:new()
Typetype=target.GetType();//得到类型varprops=target.GetType().GetProperties();//得到这个对象的所有属性
ColumnAttributecolumnAttr;
object[]objs;
//开始遍历这个对象的所有属性
System.Text.StringBuildersb=newStringBuilder("");
sb.Append("");
object[]fks;
foreach(PropertyInfopropinprops)
objs=prop.GetCustomAttributes(typeof(ColumnAttribute),false);//得到自定义特性
fks=prop.GetCustomAttributes(typeof(AssociationAttribute),true);
stringcolumnname="";//定义变量,表示json对象中某个属性名
objectvalue="";//定义变量,表示json对象中某个属性值if(fks.Count()>0)
//如果是外键的话
//这里要考虑是否有外键对象,如果是外键对象,则构造外键对象
//出于性能的考虑,只遍历第一层外键
value=prop.GetValue(target,null);
AssociationAttributefk=fks[0]asSystem.Data.Linq.Mapping.AssociationAttribute;
if(fk.IsForeignKey==true)
columnname=fk.Storage.Substring(1);//得到属性名
if(value!=null)//如果有外键对象存在,则构造外键对象
stringinnerjson=ConvertObjectToJsonNoForeignKey<T>(value);
sb.Append("\""+columnname+"\""+":"+innerjson+",");
else
sb.Append("\""+columnname+"\""+":null,");
if(objs.Count()>0)
columnAttr=objs[0]asColumnAttribute;//得到自定义columnAttribute对象
//如果取到值了
if(columnAttr!=null)
columnname=columnAttr.Storage.Substring(1);//得到属性名
value=prop.GetValue(target,null);//获得这个属性值
if(value==null)
sb.Append("\""+columnname+"\""+":null,");
else
if(valueisstring||valueisDateTime)
stringstr=value.ToString();
str=str.Replace("\r\n","\\r\\n").Replace("\'","‘").Replace("\n","\\n").Replace("\r","\\r").Replace("\"","“");
sb.Append("\""+columnname+"\""+":\""+str+"\",");
else
sb.Append("\""+columnname+"\""+":"+value+",");
//出了循环之后,需要将这个字符串的最后一个逗号去掉
intstart1=sb.ToString().LastIndexOf(",");
if(start1!=-1)
sb.Remove(start1,1);//去除最后一个,
sb.Append("");
returnsb.ToString(); privatestaticstringConvertObjectToJsonNoForeignKey<T>(objecttarget)whereT:new()
//Typetype=target.GetType();//得到类型varprops=target.GetType().GetProperties();//得到这个对象的所有属性
ColumnAttributecolumnAttr;
object[]objs;
//开始遍历这个对象的所有属性
System.Text.StringBuildersb=newStringBuilder("");
sb.Append("");
foreach(PropertyInfopropinprops)
objs=prop.GetCustomAttributes(typeof(ColumnAttribute),false);//得到自定义特性
stringcolumnname="";//定义变量,表示json对象中某个属性名
objectvalue="";//定义变量,表示json对象中某个属性值
if(objs.Count()>0)
columnAttr=objs[0]asColumnAttribute;//得到自定义columnAttribute对象
//如果取到值了
if(columnAttr!=null)
columnname=columnAttr.Storage.Substring(1);//得到属性名
value=prop.GetValue(target,null);//获得这个属性值
if(value==null)
sb.Append("\""+columnname+"\""+":null,");
else
if(valueisstring||valueisDateTime)
stringstr=value.ToString();
str=str.Replace("\r\n","\\r\\n").Replace("\'","‘").Replace("\n","\\n").Replace("\r","\\r").Replace("\"","“");
sb.Append("\""+columnname+"\""+":\""+str+"\",");
else
sb.Append("\""+columnname+"\""+":"+value+",");
//出了循环之后,需要将这个字符串的最后一个逗号去掉
intstart1=sb.ToString().LastIndexOf(",");
if(start1!=-1)
sb.Remove(start1,1);//去除最后一个,
sb.Append("");
returnsb.ToString();
///<summary>
///这个方法是根据传入的datatable转换为json对象字符串
///</summary>
///<paramname="dt"></param>
///<returns></returns>
publicstaticstringConvertDataTableToJSON(DataTabledt)
//return"[Id:2,LoginId:'jingjing',LoginPwd:'jingjing',Name:'JingJing',Address:'Guangzhou',Phone:'88888888',Mail:'jingjing@sina.com',UserRoleId:1,UserStateId:1,UserScore:890]";
//return"[id:1,name:'aa',id:2,name:'bb',id:3,name:'cc']";
DataColumn[]columns;
System.Text.StringBuildersb=newSystem.Text.StringBuilder("[");
foreach(DataRowrowindt.Rows)
sb.Append("");
foreach(DataColumncolindt.Columns)
if(row.IsNull(col)!=true)
if(col.DataType!=typeof(int)&&col.DataType!=typeof(double)&&col.DataType!=typeof(decimal)&&col.DataType!=typeof(float))
sb.Append("\""+col.ColumnName+"\""+":\""+row[col.ColumnName].ToString()+"\"");
else
stringstr=row[col.ColumnName].ToString();
str=str.Replace("\r\n","\\r\\n").Replace("\'","‘").Replace("\n","\\n").Replace("\r","\\r");
sb.Append("\""+col.ColumnName+"\""+":"+str);
else
sb.Append(col.ColumnName+":null");
sb.Append(",");
intstart=sb.ToString().LastIndexOf(",");
sb.Remove(start,1);//去除最后一个,
sb.Append(",");
intstart1=sb.ToString().LastIndexOf(",");
if(start1!=-1)
sb.Remove(start1,1);//去除最后一个,sb.Append("]");
returnsb.ToString(); 第5个回答 2013-03-29 您好 曾经写了个 js方法就是 将json 转化为对象的 需要 给我邮箱
以上是关于el-table数据转化为json后如何转换的主要内容,如果未能解决你的问题,请参考以下文章