文字列内の HTML 要素 (HTML タグ) の数を取得するには?
たとえば、次の文字列があります。
<div> some text
<div>
<label>some text</label>
</div>
</div>
この文字列内の html タグの数を調べるにはどうすればよいでしょうか。上記の場合の結果は 3 になります。
私はこれを試しましたが、うまくいくと思いましたが、うまくいきませんでした:
$('*').length;
文字列内の HTML 要素 (HTML タグ) の数を取得するには?
たとえば、次の文字列があります。
<div> some text
<div>
<label>some text</label>
</div>
</div>
この文字列内の html タグの数を調べるにはどうすればよいでしょうか。上記の場合の結果は 3 になります。
私はこれを試しましたが、うまくいくと思いましたが、うまくいきませんでした:
$('*').length;
var s = "<div> some text<div><label>some text</label></div></div>";
var length = $(s).find('*').andSelf().length;
jQueryを使用している場合(そしてあなたがそうであるように見える場合)、最も簡単な方法は次のようなコードを使用することです。
var count = $( yourString ).find('*').andSelf().length
ただし、バニラJavaScriptを使用している場合、実装は次のようになります。
var temp = document.createElement('div');
temp.innerHTML = yourString;
var count = temp.getElementsByTagName('*').length;
jQuery を使用できます: $("html *") は、html タグ間のすべての要素を返します。
小さな自己文書化の例:)
<!DOCTYPE html>
<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>List Elements</title>
</head>
<body>
<div>some text
<div>
<label>some text</label>
</div>
</div>
<script>
var x=document.getElementsByTagName('*');
console.log(x.length)
for (i=0;i<x.length;i++) {
console.log(x[i]);
}
</script>
</body>
</html>
あなたはこのようにそれを行うことができます、
文字列を次のdiv
ように隠したものに入れます
$('#myHiddenDiv').html(string);
それから
その下の子の数を生成できます
これにより、本文の下にあるhtml要素の数がわかります
var count = $("#myHiddenDiv> *").length;
また:
var count = $("#myHiddenDiv").children().length;
あなたのdivはこのようになります
<div id="myHiddenDiv" style="display:none"></div>
可能な方法: http://api.jquery.com/length/
jQueryを使用して文字列内の要素の数を見つけるをチェックしてください
例えば
$( '.myClass', myData ).length;
(ただし、これは最も外側のタグを表示しない場合があります)