簡體   English   中英

jQuery:如何在一個元素之后附加內容?

[英]jQuery: How to append something after one element?

DOM

<div id="a">
   <div id="b"></div>
<div>

<p>Insert me after #b</p>

要求是在'#b'之后插入insert p標簽,並且當再次發生插入操作時,僅替換p標簽而不添加更多標簽。

謝謝你的幫助

嘗試這個:

function insertP(html)
{
    var a = $("#a");
    var p = a.find("p")
    if(p.length == 0)
    {
      p = $("<p></p>").appendTo(a);
    }
    p.html(html)
}

這將直接在#a中的#b之后插入它,但是如果它已經存在,則不會再次插入。

$(document).ready(function(){
  if ($('#newP').length == 0) {
    $('#b').append('<p id="newP">Insert me after #b</p>')
  }
});

此函數將刪除現有元素,然后添加新元素。 如果不存在,它將僅添加元素。

<body>
    <script type="text/javascript">
    $(document).ready(function() {
            function addAfterB(pElement) {
                    if (!$('#b ~ p')) {
                            $(pElement).insertAfter('#b');        
                    } else if ($('#b ~ p')) {
                            $('#b ~ p').remove();
                            $(pElement).insertAfter('#b')
                    }        
            }
            addAfterB('<p>New Item 1</p>');

    });
    </script>

    <div id="a">
            <div id="b"></div>
            <p>hello</p>
    <div>

您可以使用$ .after()...

<div id="a">
   <div id="b"></div>
<div>

...
<script>
   $("#b").after("<p>Insert me after #b</p>");
</script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM