0

在下面的代码中,我试图在<div></div>其中包含 的之后添加内容<span>,当单击<span>内部时<div></div>

这是地方:

<div id="container">

    <div class="h1" data-id="1">Teachers <span class="add" data-id="US01">Add New</span></div>
    <div class="h2" data-id="2">Who is your favorite Math teacher? <span class="add" data-id="US02">Add New</span></div>
        <br>
    <div class="h1" data-id="8">Restaurants <span class="add" data-id="US10">Add New</span></div>
    <div class="h2" data-id="9">Which is your favourtie restaurant in town? <span class="add" data-id="US20">Add New</span></div>

</div>

因此,如果我要单击<span> add,则需要在<div>包含<span>. 问题是,现在它在</span>. 我怎样才能让它在</div>包含之后添加<span>

这是我正在尝试的其余代码:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Side bar poll thingy</title>
<style type="text/css">
.hide {
    display: none;
}
.no-like {
    color: blue;
}
.first{
    display:block;
}
</style>

<script type="text/javascript" src="http://localhost/site/scripts/jQueryCore.js"></script>
<script type="text/javascript">
$(document).ready(function() {
    $(".add").click(function() {
        var idPri   = $(this).data("id");
        //var data = 'id='+idPri+'&sec='+idSec;
        console.log($(this).data('id'));
        $(this).after("<div class='newbox'>I'm new box by append</div>");



        if(idPri) {
            // ajax call
            $.ajax({
                type:"GET",
                url:"demo.php",
                data:data,
                dataType: 'json',
                beforeSend:function(html){
                    // To do later
                },
                success: function(callBack){

                },
                error: function(page_data){

                },
            });
        }
        return false;
    });
});
</script>
</head>
<body>

<div id="container">

    <div class="h1" data-id="1">Teachers <span class="add" data-id="US01">Add New</span></div>
    <div class="h2" data-id="2">Who is your favorite Math teacher? <span class="add" data-id="US02">Add New</span></div>
        <br>
    <div class="h1" data-id="8">Restaurants <span class="add" data-id="US10">Add New</span></div>
    <div class="h2" data-id="9">Which is your favourtie restaurant in town? <span class="add" data-id="US20">Add New</span></div>

</div>

</body>
</html>
4

1 回答 1

2

使用.parent()方法:

$(this).parent("div").after("<div class='newbox'>I'm new box by append</div>");

DEMO FIDDLE

于 2013-09-06T05:16:54.773 回答