Kre*_*rev 6 html jquery code-snippets
我想这样做,以便具有"片段"类的任何元素的子元素被读作文本而不是HTML.我知道要这样做,我需要更改<和>标记,以便HTML页面将它们作为文本读取.我一直试图这样做但不幸的是,我只有:
function(){
$('.snippet')
}
Run Code Online (Sandbox Code Playgroud)
Jas*_*per 14
您可以使用jQuery的.text()功能删除HTML标签:
var text_only = $('.snippet').text();
Run Code Online (Sandbox Code Playgroud)
这是一个演示:http://jsfiddle.net/meZjw/
文档.text():http://api.jquery.com/text
UPDATE
Sime Vidas有一个很好的观点,你可以迭代不同的.snippet元素,一次改变一个HTML结构:
$.each($('.snippet'), function (index, obj) {
var $this = $(this);
$this.html($this.text());
});
Run Code Online (Sandbox Code Playgroud)
这是一个使用的演示$.each():http://jsfiddle.net/meZjw/1/
UPDATE
Aepheus有一个很好的观点,我不知道这是否是被问到的,但你可以创建一个像其他语言一样逃避HTML实体的函数:
function htmlEntities(str) {
return String(str).replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"');
}
Run Code Online (Sandbox Code Playgroud)
这是演示:http://jsfiddle.net/meZjw/2/
UPDATE
您也可以使用.text()和.html()上面示例相反的顺序,将元素的HTML显示为纯文本:
$.each($('.snippet'), function (index, obj) {
var $this = $(this);
$this.text($this.html());
});
Run Code Online (Sandbox Code Playgroud)
这是一个演示:http://jsfiddle.net/meZjw/31/
Ble*_*der 10
这应该工作:
$('.snippet').each(function() {
$(this).text($(this).html());
});
Run Code Online (Sandbox Code Playgroud)
现场演示: http ://jsfiddle.net/RrUAA/1/