Javascript innerHTML中的字符计数
在html中,如何计算innerHTML中显示的真实字符数 例如,在Javascript innerHTML中的字符计数,javascript,html,Javascript,Html,在html中,如何计算innerHTML中显示的真实字符数 例如,在Hi中,字符的#应该是2,而不是19 我尝试了两种不起作用的方法: str.length-这将包括字符 getElementById-这将包括字符: 我做了如下尝试: elem_output = document.getElementById("example_id"); elem_output.innerText.length;//1st elem_output.textContent.length;//2nd 我不知道哪
Hi
中,字符的#应该是2,而不是19
我尝试了两种不起作用的方法:
str.length
-这将包括
字符getElementById
-这将包括
字符:elem_output = document.getElementById("example_id");
elem_output.innerText.length;//1st
elem_output.textContent.length;//2nd
我不知道哪个元素在代码中有
#example\u id
,但是元素.innerText.length
应该可以工作
编辑:其他答案建议使用textContent
而不是innerText
。我认为,根据OP的实际需要,其中一种(甚至是出现在问题标题中的innerHTML
)可能是合适的。因此,我建议仔细阅读文档中这些属性之间的差异:
innerText
,因为:
innerText
知道样式,不会返回隐藏元素的文本,而textContent
会
var tag=document.getElementById('test');
console.log(tag.innerText.length)
您好您要使用的
这是最简单、最优雅的解决方案。
var html='div1div2';
控制台日志(
html.replace(//gm',).length
);代码>试试这个
var p=document.createElement(“p”)
p、 innerHTML=“嗨”
alert(p.querySelector(“strong”).innerHTML.length)
我想文本中可能有很多不同的html标记,所以有三种方法
如果需要使用regex过滤特定的标记,那么innerHTML将是获得所需内容的方法
var exampleid=document.getElementById('example_id').innerHTML;
exampleid=exampleid.replace(/]strong>/g,“”);
警报(例如id.length+characters.)代码>
hi,我是粗体,我的标签被忽略,而我是斜体,但我的标签被计数。
这对于hi
document.getElementsByTagName("strong").innerText.length;
太好了,谢谢。这管用!我不应该使用elem_output.innerText.length | elem_output.textContent.length代码>只有元素输出.innerText.length
部分就足够了。确定
是运算符,我对您的代码没有任何意义…当使用文档时,哈希符号
不应该出现在您的ID名称中。getElementById()
getElementsByTagName()
返回节点列表,而不是单个节点element@charlietfl是的,你是ri8,我以为只有一个strong
element绝对没有这个必要。innerText
和textContent
都会获取节点及其子节点的渲染文本。检查这个@JordiNebot的控制台谢谢你的评论,我更新了我的答案。
document.getElementsByTagName("strong").innerText.length;