Javascript 从对象值中删除 HTML

标签 javascript jquery html strip

我有一个对象数组,其中一些对象值包含我需要删除的 HTML 标记。

我试着遍历它,然后在元素上使用 jQuery 函数 unwrap(),但我收到一个错误,指出 unwrap 不是一个函数。

var tempData = w2ui.grid.records;

// Modify our tempData records to remove HTML
$.each(tempData, function(key, value) {
    value.unwrap('a');
});

我的结构如下:

Array [ 
    Object,
    Object,
    Object
]

对象/属性示例:

Object = {
    Name: 'Bob',
    email: 'bob@gmail.com'
    website: '<a href="http://www.example.com">Example.com</a>'
}

修改对象后的期望输出:

Object = {
    Name: 'Bob',
    email: 'bob@gmail.com'
    website: 'Example.com'
}

这是我开始的一个快速示例 fiddle :https://jsfiddle.net/zcwk1kw6/

该示例显示了包含 HTML 的单个值,但我的最终目标是从任何值中删除所有 HTML,而不是针对特定属性。

解决这个问题的最佳方法是什么?

最佳答案

$.each(data, function(key, value) {
  data[key].Website = $(value.Website).text();
});

这应该可以完成工作。

编辑:对于任何属性:

$.each(data, function(key, value) {
  $.each(value, function(_key, _value) {
     data[key][_key] = $('<div>'+_value+'</div>').text(); // <div></div> for those which are simply strings.
  });
});

关于Javascript 从对象值中删除 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42516630/

相关文章:

html - 位置为 : relative is hidden once button has focus in overflow-y:auto parent container 的所有内容

javascript - 如何修复 Wkhtmltopdf 不正确的页数

Jquery:单击 anchor 链接时如何使内容显示在导航栏下方?

javascript - 名为 Columnizer 的 Jquery 插件在 IE 上无法正常运行

javascript - jQuery 类选择器 : With or Without tagname?

javascript - 在 D3 中使用 HTML 作为标签

c# - 在 Html 页面中使用 Javascript 调用 Wcf 服务

javascript - iOS WKWebView 选项选择触发太迟

javascript - ng-view 中的嵌套指令在 AngularJs 中不起作用

javascript - 在 D3.js 中使用数组作为输入数据