使用JavaScript嵌套DIV

使用JavaScript嵌套DIV,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在尝试在另一个DIV内单击按钮加载DIV,再次单击按钮,它将在新创建的DIV内创建一个新DIV。这是我的小提琴:和我的代码: HTML: 0 JavaScript: int level=1; function nestDiv() { document.getElementById('x'+(level-1)).innerHTML="<div id='x"+level+"'>"+level+"</div>"; level++; if(leve

我正在尝试在另一个DIV内单击按钮加载DIV,再次单击按钮,它将在新创建的DIV内创建一个新DIV。这是我的小提琴:和我的代码:

HTML:


0
JavaScript:

int level=1;
function nestDiv()
{
    document.getElementById('x'+(level-1)).innerHTML="<div id='x"+level+"'>"+level+"</div>";
    level++;
    if(level==5)
        //do somthing
}
int-level=1;
函数nestDiv()
{
document.getElementById('x'+(级别1)).innerHTML=“”+级别+”;
级别++;
如果(级别==5)
//干坏事
}

我还想在嵌套级别达到5时执行一些特殊操作。我对JavaScript不是很在行。那么请告诉我如何实现这一点?

以下是如何在
jQuery
中附加
div

var newDiv = $("<div id='x"+level+"'>"+level+"</div>");
$('#x'+(level-1)).append(newDiv);
var newDiv=$(“”+level+“”);
$('#x'+(一级)).append(newDiv);

这将取代您的
文档。getElementById…

根据您的问题,我的理解是:

单击按钮时,将一个div添加到另一个div

现在,当用户单击另一个按钮时,必须在先前创建的新div中添加新div

让我们把它分解一下:

$("button").click(function() {
    if($("#referenceDivId").children().length == 0) {
        // if there are no children initially
        $("#referenceDivId").append("<div>New div</div>");
    } else if($("#referenceDivId").children().length == 5) {
        // do your magic when children divs are 5
    }
    else {
        // if it already had children
        $("#referenceDivId").find("div:last").append("<div>New div</div>");   
    }
});
$(“按钮”)。单击(函数(){
if($(“#referenceDivId”).children().length==0){
//如果最初没有孩子
$(“#referenceDivId”)。追加(“新div”);
}else if($(“#referenceDivId”).children().length==5){
//当孩子们5岁时,施展你的魔法
}
否则{
//如果它已经有孩子了
$(“#referenceDivId”).find(“div:last”).append(“New div”);
}
});

在代码中,只需将
int更改为var
并将函数作为变量调用:

var level=1;
nestDiv = function()
{
    document.getElementById('x'+(level-1)).innerHTML="<div id='x"+level+"'>"+level+"</div>";
    level++;
}
var级别=1;
nestDiv=函数()
{
document.getElementById('x'+(级别1)).innerHTML=“”+级别+”;
级别++;
}

awesome@adeneo。请添加代码作为您的答案。不,现在随时都会有人窃取它并发布,或者发布更好的内容。如果没有,你可以自己发布并接受答案。Nice one@adeneo我采用了不同的方法,尽管javascript中没有
int
,只有
var
const
,所以使用
int
是一个语法错误感谢纯JS解决方案。但是,您能告诉我如何使用
var
而不是
int
对输出产生如此大的影响吗?当然,您可以在这里看到parseInt函数。谢谢@mohamedrias+1但我用NEOLPAR标记了答案,因为adeneo和NEOLPAR给出的答案是纯JS的。)谢谢@Nicolas78+1但我用NEOLPAR标记了答案,因为adeneo和NEOLPAR给出的解决方案是纯JS的。)
var level=1;
nestDiv = function()
{
    document.getElementById('x'+(level-1)).innerHTML="<div id='x"+level+"'>"+level+"</div>";
    level++;
}