2

私は次のものを持っているとしましょう:

<div id="myid" class="myclass"></div>

私がやりたいのは、jQuery を介してこのタグを見つけ、この div の <> の間のものを取得することです。この場合、出力を次のようにしたいと思います。

div id="myid" class="myclass"

innerHTML を探すのではなく、タグの内容だけを探します。jQuery を使用して既知の属性をテストできることはわかっていますが、ここで実際の文字列を取得できるようにしたいと考えています。親タグの innerHTML を取得してから解析を行うことができると思いましたが、それは面倒でエラーが発生しやすいようです。私はむしろ次のようなことをしたいと思います

alert($('#myid').getTagContents())

上のビットを警告します。これは可能ですか?それを行う方法について何か考えはありますか?

参考までに、この質問は重複としてマークされているようですが、他の質問は私の懸念に対応していません。属性をループしたくありません。タグからリテラル文字列が必要なので、自分で解析できます。

4

2 に答える 2

3

これにより、必要なものが取得されます。

alert($('#myId')[0].outerHTML.split('>')[0].substring(1));
于 2013-02-11T18:44:30.117 に答える
1

基本的に自分で何かを構築する必要があります。結果を返す本当に簡単な jQuery 拡張機能を作成しました。

http://jsfiddle.net/aY4nG/

$.fn.getTagContents = function () {
     var $this = $(this),
         tags  = $this[0].outerHTML,
         endLoc = '';

    endLoc = tags.indexOf('>') - 1;

    return tags.substr(1, endLoc);
};

var tags = $('#test').getTagContents();

console.log(tags);
// logs: div id="test" class="whatever"
于 2013-02-11T18:39:28.447 に答える