【问题标题】:Javascript String replaceJavascript字符串替换
【发布时间】:2016-01-05 21:35:19
【问题描述】:

我想知道如何在 javascript 或 jquery 中执行以下功能! 有一个函数将返回以下字符串。我必须编写一个函数来转换给它的输入,如下所示。

Hello world&nbsp;<img draggable="false" class="emoji" alt="????" src="36x36/1f31e.png">&nbsp;How are you all! ! ! !<img draggable="false" class="emoji" alt="????" src="36x36/1f33b.png">&nbsp;All the Best<img draggable="false" class="emoji" alt="????" src="36x36/1f4aa.png">

如果上面是我的字符串输入! 我希望输出是这样的

Hello world&nbsp;1f31e&nbsp;How are you all! ! ! !1f33b&nbsp;1f4aa

如何做到这一点.. 请给我一个最好的方法!

提前谢谢你!!

【问题讨论】:

  • 将文本放在另一个 div 中并使用.text(),在这里您可以找到更多信息。:api.jquery.com/text
  • 可以手动解析,从img.src中获取数字并与文本拼接
  • 用文本节点替换图像节点。
  • 怎么做? @KevinB 我是这里的新手

标签: javascript jquery html string


【解决方案1】:

如果您没有编码字符,您可以简单地执行$('body').text(),但不幸的是$.text() 会自动解码它们。所以为了绕过它,你需要编写一个自定义函数。

$.fn.getText = function()
{
  var text = '';
  $(this).contents()
    .filter(function() {
       $(this).text() == "" ? text += "&nbsp;" + $(this).attr("src").split('/')[1].split('.')[0]  : text += $(this).text();
    });
    return text;
}

alert($('body').getText());

工作示例:https://jsfiddle.net/DinoMyte/2rhasve1/1/

【讨论】:

    猜你喜欢
    • 2015-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多