45

<li>たとえば、特定の位置に aを追加したいと思います。

<ul id="list">
    <li>Position 1</li>
    <li>Position 2</li>
    <li>Position 4</li>
<ul>

<li>新しいbelow/afterを追加したいとしましょう<li>Position 2</li>。jQuery を使用してそれを行うにはどうすればよいですか?

私は以下のコードを使用してそれをやろうとしました:

$('#list li:eq(1)').append('<li>Position 3</li>');

しかし、それは動作しませんでした. の<li><li>Position 2</li>に を追加し、代わり<li><li>Position 2</li>.

誰か助けてくれませんか?

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

4

4 に答える 4

81

after()代わりに使用する必要がありますappend()

説明:パラメータで指定されたコンテンツを、一致した要素のセット内の各要素の後に挿入します。

$('#list li:eq(1)').after('<li>Position 3</li>');

のドキュメントには、次のようにappend()明確に記載されています。

各要素の末尾にコンテンツ (...) を挿入します。


完全を期すために:

は、一致する要素セットの th 要素に一致するのに対し、親のth 子に:eq(n)一致することに注意してください。n:nth-child(n)n

于 2010-05-28T20:20:24.860 に答える
8

after()またはhttp://api.jquery.com/category/manipulation/dom-insertion-outside/を使用する必要がありますinsertAfter()

于 2010-05-28T20:29:27.980 に答える
3
$('<option val="position3">Position3</option>').insertAfter('#list :nth-child(<give childnumber here>)')

1 から始まるインデックス

于 2012-08-09T08:33:17.513 に答える
1

ここをチェックinsertAfter

于 2010-05-28T20:19:55.763 に答える