关于序列化成JSON是NULL值转成空字符串,要怎么搞

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于序列化成JSON是NULL值转成空字符串,要怎么搞相关的知识,希望对你有一定的参考价值。

参考技术A 现在是有一些字段 没有 赋值, 序列化后,该字段会变成NULL,
例: public string aaget;set;
序列化后会变成: aa:null

我要的结果是aa:"" 这样前端显示就正常了,
参考技术B NET里面的null和空字符串是不同的概念,null代表了未初始化,而空字符串则是初始化过了,这两者是有严格区分的,不能因为你某个地方要用到空字符串而强制修改序列化类的处理方式,对于为null属性,反序列化是不处理该属性的本回答被提问者采纳

玩转web之json---将表单通过serialize()方法获取的值转成json

form表单有一个serialize()方法。能够序列化表单的值,可是jquery提供的这种方法会把数据序列化为类似以下的形式:

a=1&b=2&c=3&d=4

jquery并没有提供将表单数据序列化为json的方法。所以须要我们自己封装一下。以下给出代码和測试例子,先写一个js文件:

$.ajaxSetup({
    contentType: "application/x-www-form-urlencoded; charset=utf-8"
});
var DataDeal = {
//将从form中通过$(‘#form‘).serialize()获取的值转成json
		   formToJson: function (data) {
			   data=data.replace(/&/g,"\",\"");
               data=data.replace(/=/g,"\":\"");
               data="{\""+data+"\"}";
               return data;
		    },
};

用法:先在页面导入上面的js文件,然后

        var data=$(‘#addf‘).serialize();//获取值
        data= decodeURIComponent(data,true);//防止中文乱码
        var json=DataDeal.formToJson(data);//转化为json





以上是关于关于序列化成JSON是NULL值转成空字符串,要怎么搞的主要内容,如果未能解决你的问题,请参考以下文章

从list表单序列化后的值转成标准json

玩转web之json---将表单通过serialize()方法获取的值转成json

JQuery将form表单值转换成json字符串函数

关于C#使用json,不能把匿名类对象转成json字符串吗

[C++]json cpp中将整个Json::Value转成std::string或者把里面值转成string类型

序列化后的json串与解析json串实体间的关系