ol
(ordered list)タグをul
(順序付けられていないリスト)に置き換えたいと思います。それは動作しますが、実際にスワップすると、新しいものが書かれ、リストに追加したいと考えているとします。したがって、私は何かコードに間違っていると思う。htmlタグをjqueryに置き換えよう
本質的には動作していますが、この行では新しいリストオブジェクトを追加できません。
ol
(ordered list)タグをul
(順序付けられていないリスト)に置き換えたいと思います。それは動作しますが、実際にスワップすると、新しいものが書かれ、リストに追加したいと考えているとします。したがって、私は何かコードに間違っていると思う。htmlタグをjqueryに置き換えよう
本質的には動作していますが、この行では新しいリストオブジェクトを追加できません。
$.each($('ol'), function(ind) {
$(this).replaceWith("<ul>" + $(this).html() + "</ul>");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ol>
<li>1</li>
<li>2</li>
</ol>
<ol>
<li>First</li>
<li>Second</li>
</ol>
これは簡単で、jQueryを使用する必要はありません。あなたはul
ですべてのol
タグを交換したい場合には
var ol = document.querySelector('ol');
ol.outerHTML = ol.outerHTML.replace(/ol/, 'ul');
、あなたはquerySelectorAll()
を使用してループを実行する必要があります。例:
var ol = document.querySelectorAll('ol');
for(var i = 0; i < ol.length; i++) {
ol[i].outerHTML = ol[i].outerHTML.replace(/ol/, 'ul');
}
すべてを置き換えるのに 'querySelectorAll'が必要です – quirimmo
@quirimmo真ですが、opはそれらのすべてについて何も言わなかった。私はとにかくそれを更新します – natanelg97
すでにDOMで作成された要素の上に行っている操作を交換Fiddle 2。新しい要素を順序付けられていないリストとして追加すると、順序付けられていないlist.soになります。新しい要素を追加するたびにreplaceメソッドを呼び出して、順序付きリストとして置換する必要があります。
新しいリストを追加しようとしていますあなたの問題を再現する* * [mcve] *コードを表示していただけますか? –
**すべての** 'ol'タグを' ul'で置き換えるのか、それとも特定のタグだけで置き換えるのですか? – natanelg97