如何替换< 与使用jquery
我有一个页面是后端CRM管理面板的一部分。 在该页面上,HTML输出来自一些我无法访问的PHP函数。 并且HTML会自动将<
和>
更改为HTML编码字符。
所以有一个div包含像
这样的html标签转换为<b />
所以我需要仅使用jQuery将其更改回HTML字符:
<
到<
>
到>
是否有一个jQuery脚本,我可以使用相应的符号替换这些特殊字符? 这意味着我的HTML标签实际上是可行的,HTML将在屏幕上正确显示?
我试过removewith()
但我无法使它工作。
增加:我试图修改的div就是这个
<strong>Valuación</strong> de InfoAuto: 35.500,00<br /> Cotización Seleccionada: Ninguna<br /> Allianz, Responsabilidad Civil: $205,25<br /> Allianz, Terceros Completos: $278,85
最简单的事情就是
$('#test').each(function(){ var $this = $(this); var t = $this.text(); $this.html(t.replace('<','<').replace('>', '>')); });
由Jared Farrish编辑/ jsfiddle
请试试这个
.replace(/</g, '<').replace(/>/g, '>')
全局替换这些字符。 我试过这个并且像魅力一样工作:)
我有不同的常规解决方案,它将应用于解码/编码html
解码
var encodedString = "<Hello>"; var decodedText = $("").html(encodedString).text(); /* this decodedText will give you "" this string */
编码
var normalString = ""; var enocodedText = $("").text(normalString).html(); /* this encodedText will give you "<Hello>" this string
$('#myDivId').text(function (i, text) { return text.replace('<', '<').replace('>', '>'); });
如果使用underscore.js存在_.unescape(string)
试试这个:-
var wrapper=$(".contentwrap").html(); wrapper=wrapper.replace(/</g,'<').replace(/>/g,'>').replace(/&/g,'&'); $(".contentwrap").html(wrapper);
使用$ this.html(’…’); 而是$ this.text(’…’);
你可以用php完成它
<strong>Valuación</strong> de InfoAuto: 35.500,00<br /> Cotización Seleccionada: Ninguna<br /> Allianz, Responsabilidad Civil: $205,25<br /> Allianz, Terceros Completos: $278,85
所有上述内容对我来说都不起作用,因为我需要的是取代所有<
到<和>
到>,不仅是第一个。 我做的是:
.split('<').join('<').split('>').join('>');
在这里开箱即用。 它对我有用,我希望它也适合你。