返回jquery结果时逗号后的空格

Posted

技术标签:

【中文标题】返回jquery结果时逗号后的空格【英文标题】:Spacing after comma when returning jquery result 【发布时间】:2017-03-22 12:48:02 【问题描述】:

我有以下代码:

$(function() 
  $('input[name=activeWarnings]').on('change', function() 
    $('#Warnings').val($('input[name=activeWarnings]:checked').map(function() 
      return this.value;
    ).get());
  );
);

结果输出如一、二、三等...我想要一、二、三的间距。我正在使用 jquery。

谢谢

【问题讨论】:

return this.value+' '; 不起作用? @AlexOdenthal 这将返回类似"one ,two, three, four " 的内容。您可能可以将空格放在值之前并使用.trim(),但我个人更喜欢 Satpal 的.join() 解决方案。 【参考方案1】:

由于您当前正在将数组传递给 val() 函数,因此它在内部转换为字符串文字。

您可以使用Array.join() 来获取所需的字符串文字。

var arr = $('input[name=activeWarnings]:checked').map(function () 
        return this.value;
    ).get();
$('#Warnings').val(arr.join(", "));

【讨论】:

【参考方案2】:

使用replace()

var thisValue = "1,2,3,4,5";
alert(thisValue.replace(/,/gi,', '));

其中正则表达式/,/gi 将替换逗号为逗号+空格

【讨论】:

【参考方案3】:

你需要replace() 这是你的答案

https://jsfiddle.net/q0eakjmg/3/

【讨论】:

以上是关于返回jquery结果时逗号后的空格的主要内容,如果未能解决你的问题,请参考以下文章