在DOJO中动态创建按钮

时间:2018-11-02 16:55:58

标签: javascript for-loop foreach dojo dijit.form

我正在尝试使用JS小提琴学习DOJO。

我想写一个创建按钮的代码(我现在知道创建按钮的代码)。

但是我想通过循环使其动态化,该循环创建n个按钮。 n是一个已定义的数字(如2,3 ..)

1 个答案:

答案 0 :(得分:2)

这是简单的任务,您只需使用for / while循环进行迭代

并使用程序化的Button创建和PlaceAt小部件功能将创建的按钮放置在父元素(此处为div元素)内

请参见以下代码段:或此FIDDLE

require(["dojo/dom", "dojo/ready", "dojo/dom-construct", "dijit/form/Button"], function(dom, ready, domConstruct, Button) {
  ready(function() {
    
    var number =  prompt("Please enter a number",3)

    for(var i=1 ; i<= number; i++) {
      new Button({
         
        label: "Button n°"+i,
        onClick: function(){
            alert('I\'m a Button');
        }
      }).placeAt("btnContainer");
      
    }    
    
  })
});
<link href="//ajax.googleapis.com/ajax/libs/dojo/1.10.0/dijit/themes/claro/claro.css" rel="stylesheet" />
<script src="//ajax.googleapis.com/ajax/libs/dojo/1.10.0/dojo/dojo.js"></script>

<body class="claro">

  <div id="btnContainer"></div>

</body>