今天看到群里有人求助form表单在使用jq序列化的时候,空值想去掉应该怎么处理
按照正常的业务逻辑来说,你使用了表单,肯定是在表单全部合法的情况下才能去序列化
其次,就算不合法,后台也应该校验一下的说啊。。。
咳咳,回归问题,我们怎么去除空值呢?
即序列化的值为"a=1&b=2&c=&d=&e=3"中的c与d都为空值的情况下我们想要的结果是"a=1&b=2&e=3"?
自己写一个函数
function serializeNotNull(serStr){
// return serStr.split("&").filter(function(str){return !str.endsWith("=")}).join("&");
return serStr.split("&").filter(str => !str.endsWith("=")).join("&");
}
然后通过调用这个函数打印的自然就是去除空值的字符串啦
serializeNotNull($("form").serialize());