2013-05-25 8 views
9

私は、次のようなHTMLがあります。HTMLコメントタグ内のテキストを取得しますか?

<!-- 
<option value="HVAC">HVAC</option> 
<option value="Cooling">|---Cooling</option> 
<option value="Heating">|---Heating</option> 
--> 
.... 

私はjQueryのgetメソッドを使用して動的にこのファイルを取得し、load_typesという名前の文字列変数に格納します。

HTMLコメントタグとその外部のすべてのタグを削除するにはどうすればよいですか?私はちょうど一致としてnullを取得する - 私はthe solutions hereを使用しようとしたが、何もが正しく働いていない

<option value="HVAC">HVAC</option> 
<option value="Cooling">|---Cooling</option> 
<option value="Heating">|---Heating</option> 

:私は唯一の内部HTMLをしたいです。

ありがとうございました!

+1

正規表現! –

+0

私はload_types.match(/ /g)を試しました。無駄に - ちょうどnullがあります。 –

+0

これを読むhttp://stackoverflow.com/questions/5653207/remove-html-comments-with-regex-in-javascript – GEMI

答えて

15

never use regex to parse HTMLを入力してください。あなたは、代わりに次を使用することができます。

var div = $("<div>").html(load_types), 
    comment = div.contents().filter(function() { 
     return this.nodeType === 8; 
    }).get(0); 

console.log(comment.nodeValue); 

DEMO:http://jsfiddle.net/HHtW7/

+5

ネイティブJavaScriptソリューション:http: //jsfiddle.net/4g3FT/、ES5を前提としたネイティブJSソリューションhttp://jsfiddle.net/TUR65/ –

+0

@BenjaminGruenbaumええ、私はちょうどそれを書いていました。ありがとう! – VisioN

+0

あなたの答えにこのコードを編集してください。 –

関連する問題