使用Javascript动态创建多个div

使用Javascript动态创建多个div,javascript,html,jquery,knockout.js,dom-events,Javascript,Html,Jquery,Knockout.js,Dom Events,我有div元素,并且有一个类。我想使用该类创建多个div,但我不想创建嵌套的div,我想使用Javascript在外部创建div。我使用了append属性,但其下面的create嵌套div是我所需要的html。我需要帮助 //have this div <div data-bind="dynamicDiv" class="one"></div> //need to create multiple div /

我有div元素,并且有一个类。我想使用该类创建多个div,但我不想创建嵌套的div,我想使用Javascript在外部创建div。我使用了append属性,但其下面的create嵌套div是我所需要的html。我需要帮助

 //have this div
 <div data-bind="dynamicDiv"  class="one"></div>

 //need to create multiple div 
  
    //Knockoutjs && javascript//
   
 ko.bindingHandlers.dynamicDiv = {
    init: function (element, valueAccessor) {
        var parentclassName = element.className;         
            lastId += 1;
          
    ///it is creating nested div, want to create outside of parentclass not inside the parent class
           $element.append(DivHtml(lastId,parentclassName));          
  },
  };

 function DivHtml(lastId,parentclassName) {
       Newdiv = document.createElement('div');
        Newdiv.id = "divId_"+lastId
        document.querySelector("." + parentclassName).appendChild(Newdiv)
  }       
//拥有这个div
//需要创建多个div
//Knockoutjs&&javascript//
ko.bindingHandlers.dynamicDiv={
init:函数(元素、值访问器){
var parentclassName=element.className;
lastId+=1;
///它正在创建嵌套div,希望在父类外部而不是父类内部创建
$element.append(DivHtml(lastId,parentclassName));
},
};
函数DivHtml(lastId,parentclassName){
Newdiv=document.createElement('div');
Newdiv.id=“divId”+lastId
document.querySelector(“.”+parentclassName).appendChild(Newdiv)
}       

修复当前代码:

  • DivHtml
    中,第三行应该是
    returnnewdiv
  • init
    应使用
    appendChild
  • 您从不定义
    $element
    ,它应该是
    element
    $(element)
但即使你解决了这个问题,我也不明白你想达到什么目的

您的示例并没有真正说明为什么需要自定义绑定处理程序。在我看来,knockout的默认绑定应该足够了:

<div data-bind="attr: { id: 'divId_' + ++lastId }" class="one"></div>


已回答:将ur
div
附加到父标记。不是你提到的那个。请分享使用的代码。所以v可以看到你错过了什么。@搜索,更新了我的code@thanks谢谢你,但我的条件我不能像它一样使用,我需要使用insertAfter或InsertBefore,所以我想在它里面使用jquery