javascript - 如何删除跨度中的连字符? (jQuery)

标签 javascript jquery html css

我有在特定链接内生成连字符的面包屑。

<div class="breadcrumbs">
   <span class="home">
        <a href="#"><span property="name">Home</span></a>
   </span>

   <span>
        <a href="#" class="post post-vehicle-archive"><span property="name">books-for-sale</span></a>
   </span>

   <span>
        <a href="#" class="book-name"><span property="name">Soup for the sould</span></a>
   </span>
</div>

我想删除 class="post post-vehicle-archive"中的大写字母。

这是我到目前为止尝试过的代码:

<script type="text/javascript">
    var j = jQuery.noConflict();
    j(function() {
        var getTermName = j('.breadcrumbs .post.post-type-archeive > span');
        j(getTermName ).text(value.replace(/\-/g, " "));

    });
</script>

结果应该是“Books For Sale”

感谢任何帮助。

最佳答案

尝试利用.text()的接收函数

var getTermName = j('.breadcrumbs .post.post-type-archeive > span');
getTermName.text(function(i,value) {
  return value.replace(/\-/g, " ")
});

如果您想将文本更改为首字母大写,请使用以下代码,

var getTermName = j('.breadcrumbs .post.post-type-archeive > span');
getTermName.text(function(i,value) {
  return value.replace(/\-/g, " ").split(" ").map(function(function(val){
     return val.charAt(0).toUpperCase() + val.slice(1);
  }).join(" ");
});

或者不要让事情变得太复杂,

JS:

var getTermName = j('.breadcrumbs .post.post-type-archeive > span').addClass("titleCase");
getTermName.text(function (i, value) {
    return value.replace(/\-/g, " ")
});

CSS:

.titleCase {
    text-transform: capitalize;
}

关于javascript - 如何删除跨度中的连字符? (jQuery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34625866/

相关文章:

html - 子元素在父元素中的定位

html - 跨度内的标签 p 不应用 css 样式

javascript - 在 Node.js 网络中使用 pipe()

javascript - 有没有更简洁的方式来编写JS来显示和隐藏?

javascript - 如何让我的 jQuery 在每次加载页面时运行,即使是从缓存中运行?

javascript - JS 将文本添加到输入中(如果尚未输入)

java - 获取 thymeleaf 中的java对象

javascript - 如何使用php动态更改html链接的ID?

javascript - 我可以使用 d3.js 显示 GraphViz 生成的点或 xdot 布局文件吗?

javascript - 动态调整 JQuery thickbox 窗口的大小