[英]jQuery - Add a comma only if a there is a value
我还不太清楚执行此操作的最佳方法,但是我将一些值输入到我的jquery插件中。 我遵循在每个值之后添加一个空格的约定。 然后,我抓取jquery参数,并尝试为每个参数添加一个“,” ,以便可以将其输入到json调用中。 问题是,如果我添加一个','代替空格,并且插件中变量返回的值为空,则会得到多个不需要的逗号。 (即,播客)。 如果变量中有值,如何只添加逗号?
$(document).ready(function () {
$('#gallery').mediaFilters({
mediaType: '${article} ${podcast} ${image}',
headerType: '${internet} ${cloud} ${background}',
});
});
JQUERY发送到JSON:
var mediaType = "&mediaType=" + opts.mediaType.split(/[ ]/).join(',');
var headerType = "&headerType=" + opts.headerType.split(/[ ]/).join(',');
regex / +/
将匹配多个空格,因此输入ab
将变成a,b
。
正则表达式/^ *| *$/
/^ *| *$/
将匹配字符串开头和结尾的空格。
在一起,这里的代码将用逗号替换那些代码,并删除开始和结尾空格。
var mediaType = "&mediaType=" + opts.mediaType.replace(/^ *| *$/g,'').replace(/ +/g,',');
var headerType = "&headerType=" + opts.headerType.replace(/^ *| *$/g,'').replace(/ +/g,',');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.