首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在单击按钮上创建元素?

如何在单击按钮上创建元素?
EN

Stack Overflow用户
提问于 2014-08-07 12:58:42
回答 1查看 7K关注 0票数 0

当我单击按钮时,我想动态创建一个元素。为此,我必须使用ng-click还是指令?

下面是我正在尝试使用JSFIDDLE实现的jQuery:

HTML:

代码语言:javascript
复制
<button id="myButton">Click Me</button>
<div id="container"></div>

JS:

代码语言:javascript
复制
$("#myButton").on("click", function() {
    $("#container").append('<div class="box"></div>');
});

此外,如果您想要一个angularjs解决方案,这里有一个基本的JSFIDDLE (到目前为止)。

警告:

  • 请避免使用ng-repeat的控制器解决方案。上面的代码是一个简化的示例。创建的元素不会以列表的形式出现,因为我将向它们附加一个拖动指令。
EN

回答 1

Stack Overflow用户

发布于 2014-08-07 13:17:00

http://jsbin.com/cuciyu/2/edit

JS

代码语言:javascript
复制
var app = angular.module('app', []);

app.directive("addDiv", function($compile){   
          return{
            restrict: 'AE',
            link: function(scope , element,attr){        
               element.bind("click", function(e){ 
               var container =   angular.element(document.querySelector("#container"));
               var childNode = $compile('<div class="box">BOX DIV</div>')(container);
               container.append(childNode);

               });
            }
        };
       });

    app.controller('firstCtrl', function($scope){


    });

HTML:

代码语言:javascript
复制
  <body ng-app="app">
  <div ng-controller="firstCtrl">
    <button add-div>Click Me</button>
        <div id="container"></div>
      </div>
</body>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25183186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档