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:'火影世界']
我需要把这些充值数据 插入到数据库

参考技术A 下载这个Newtonsoft.Json,很软件就可以转换了 参考技术B 有json 反序列化的类,但是先要知道类型 参考技术C 有json 反序列化的类,但是先要知道类型 参考技术D ///<summary>
///这个方法用来初始化一个实体,将实体的数字型类型设置为-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后如何转换的主要内容,如果未能解决你的问题,请参考以下文章

el-table返回行数

el-table表格导出Excel+选中导出+导出重复

el-table没有数据位置会变

如何将Map转化为json字符串

如何把对象转化为字符串 php

Element表格el-table多列排序,后端接口排序