在元素之间添加分隔符

时间:2016-11-24 08:16:23

标签: javascript jquery

我通过循环遍历一组其他元素在div中添加一些链接。

代码看起来基本上像

$('.js-section').children().each(function() {
  var initial = $(this).data('initial');
  $(".js-section-navigation").append("<a href='#"+ initial +"'>"+ initial +"</a>" )
});  

产生类似abcd

的东西

现在,我如何在字符之间添加|之类的分隔符才能获得a | b | c | d

如果我只是在追加中添加分隔符,我最终得到a | b | c | d |,但我不希望在最后一个字符后面有分隔符。

感谢。

1 个答案:

答案 0 :(得分:4)

首先,您的代码的引号不匹配,但我认为这只是问题中的错字,因为您的代码在当前状态下根本不起作用。

要解决您的问题,您可以push()将每个<a>元素添加到数组中,然后join()append()与分隔符一起var els = []; $('.js-section').children().each(function() { var initial = $(this).data('initial'); els.push('<a href="#"' + initial + '">' + initial + '</a>'); }); $(".js-section-navigation").append(els.join(' | ')); ,如下所示:

.js-section-navigation a {
    display: inline-block; 
    border-right: 1px solid #000; /* amend as needed */
    padding-right: 10px;
    margin-right: 10px;
}
.js-section-navigation a:last-child {
    border: 0;
    padding: 0;
    margin: 0;
}

或者,您可以使用当前的代码并使用CSS放置分隔符,如下所示:

Id          DrgId    CodeType IsPrincipal Code
182250051   48261836    I     1           T151  
182250055   48261836    I     2           U739  
182250059   48261836    I     3           Y929  
182250061   48261836    I     4           W444  
182250062   48261836    A     2           3006104   

Working Example