返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Angularjs如何动态添加指令并绑定事件
  • 411
分享到

Angularjs如何动态添加指令并绑定事件

2024-04-02 19:04:59 411人浏览 八月长安
摘要

这篇文章主要介绍angularjs如何动态添加指令并绑定事件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!先说使用场景,动态生成DOM元素并绑定事件,非常常见的一种场景,用jq实现效

这篇文章主要介绍angularjs如何动态添加指令并绑定事件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

先说使用场景,动态生成DOM元素并绑定事件,非常常见的一种场景,用jq实现效果:

var count=0;
$("#test").on("click",function(event){
 if(event.target.tagName.toLowerCase()=="input") return;
 count++;
 var html="<input type='text' class='newEle' value='"+count+"'/>";
 $(this).html(html);
 $(".newEle").focus();
});
$("body").on("blur",".newEle",function(){
 alert($(this).val());
})

如果用angularjs应该怎么实现呢?想当然的情况是这样的:

var myApp = angular.module('myApp', []);
    myApp.controller('MainCtrl', ['$scope','$compile',function($scope) {
      $scope.count = 0;
      $scope.add = function() {
       if(event.target.tagName.toLowerCase()=="input")return;
        var target=$(event.target);
        $scope.count++;
        target.html("<input value='"+$scope.count+"' ng-blur='showValue()'>" );
      }
      $scope.showValue=function(){
        alert(event.target.value)
      }
    }])

理想很丰满,点击test的时候内容确实变成了input,但是input不能绑定任何ng事件。

var myApp = angular.module('myApp', []);
    myApp.controller('MainCtrl', ['$scope','$compile',function($scope, $compile) {
      $scope.count = 0;
      $scope.add = function() {
       if(event.target.tagName.toLowerCase()=="input")return;
        var target=$(event.target);
        $scope.count++;
        target.html($compile("<input value='"+$scope.count+"' ng-blur='showValue()'>")($scope));
      }
      $scope.showValue=function(){
        alert(event.target.value)
      }
    }])

达到目的~

这里用到了$compile服务,官方的解释是compile可以将一个HTML字符串或者DOM编译成模板,该模板能够与scope链接起来,也就是说直接插入一段html片段到页面中,虽然能插入进去,但是angular并没有编译,所以任何ng事件指令绑定都是无效的,通过compile能够将html片段先编译后再插入。

以上是“Angularjs如何动态添加指令并绑定事件”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网JavaScript频道!

--结束END--

本文标题: Angularjs如何动态添加指令并绑定事件

本文链接: https://lsjlt.com/news/76902.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Angularjs如何动态添加指令并绑定事件
    这篇文章主要介绍Angularjs如何动态添加指令并绑定事件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!先说使用场景,动态生成DOM元素并绑定事件,非常常见的一种场景,用jq实现效...
    99+
    2024-04-02
  • Angularjs如何实现键盘事件的绑定
    这篇文章主要介绍了Angularjs如何实现键盘事件的绑定,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。方法一:ng内置指令<butt...
    99+
    2024-04-02
  • Jquery中怎么动态添加元素并添加点击事件
    本文小编为大家详细介绍“Jquery中怎么动态添加元素并添加点击事件”,内容详细,步骤清晰,细节处理妥当,希望这篇“Jquery中怎么动态添加元素并添加点击事件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。给动态...
    99+
    2023-06-17
  • jquery如何动态生成标签绑定事件
    这篇文章主要为大家展示了“jquery如何动态生成标签绑定事件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jquery如何动态生成标签绑定事件”这篇文章吧。结...
    99+
    2024-04-02
  • js中如何使用事件on动态绑定数据以及绑定多个事件
    这篇文章将为大家详细讲解有关js中如何使用事件on动态绑定数据以及绑定多个事件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一.on('clcik')与$...
    99+
    2024-04-02
  • vue如何给组件动态绑定不同的事件
    目录vue给组件动态绑定不同的事件场景vue组件绑定事件无效下面提供两者方法,可以任选其一vue给组件动态绑定不同的事件 场景 根据用户配置的事件动态绑定。也就是用户可以动态选择配置...
    99+
    2022-11-13
    vue组件 动态绑定事件 vue动态绑定
  • jQuery如何绑定滚动事件?
    这篇文章将为大家详细讲解有关jQuery如何绑定滚动事件?,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。jQuery绑定滚动事件 jQuery提供了一个简便的方法来绑定滚动事件,允许您在滚动页面或特定元素...
    99+
    2024-04-02
  • 微信小程序如何使用template添加绑定事件
    小编给大家分享一下微信小程序如何使用template添加绑定事件,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!对于模板的使用,我是想将模板的事件单独出来,其他引用模板的页面中不再掺杂模板事...
    99+
    2024-04-02
  • 如何使用AngularJS对动态增加的DOM实现ng-keyup事件
    这篇文章将为大家详细讲解有关如何使用AngularJS对动态增加的DOM实现ng-keyup事件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。我们经常在网页中看到这种形式...
    99+
    2024-04-02
  • jQuery如何绑定完成动画事件?
    这篇文章将为大家详细讲解有关jQuery如何绑定完成动画事件?,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。jQuery 绑定完成动画事件 动画事件概述 jQuery 提供了多种动画方法,用于创建动态、...
    99+
    2024-04-02
  • jQuery如何绑定失败动画事件?
    这篇文章将为大家详细讲解有关jQuery如何绑定失败动画事件?,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。jQuery绑定失败动画事件 jQuery提供了多种方法来绑定自定义事件,包括动画事件。失败动画...
    99+
    2024-04-02
  • jQuery如何绑定停止动画事件?
    这篇文章将为大家详细讲解有关jQuery如何绑定停止动画事件?,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。jQuery 绑定停止动画事件 jQuery 提供了多种方法来绑定停止动画事件。在选择合适的方法...
    99+
    2024-04-02
  • bootstrap如何动态添加面包屑及其响应事件
    这篇文章给大家分享的是有关bootstrap如何动态添加面包屑及其响应事件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体如下:Bootstrap官网中,只介绍了breadcr...
    99+
    2024-04-02
  • 安卓(Android)动态创建多个按钮并添加监听事件
    1.获取屏幕大小,以合理设定 按钮 大小及位置 DisplayMetrics dm = new DisplayMetrics(); getWindowManager()....
    99+
    2022-06-06
    监听 事件 动态 按钮 Android
  • AngularJS如何实现单选框及多选框的双向动态绑定
    这篇文章给大家分享的是有关AngularJS如何实现单选框及多选框的双向动态绑定的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。AngularJS 在 <input type...
    99+
    2024-04-02
  • 如何添加MYSQL新用户并指定数据库
    下面讲讲关于如何添加MYSQL新用户并指定数据库,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完如何添加MYSQL新用户并指定数据库这篇文章你一定会有所受益。 1.cd...
    99+
    2024-04-02
  • jQuery如何为DOM动态追加事件
    这篇文章将为大家详细讲解有关jQuery如何为DOM动态追加事件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。处理一个列表绑定,因为是一个展示项目,没有使用复杂的插件,直...
    99+
    2024-04-02
  • 如何使用Python Celery动态添加定时任务
    本篇内容介绍了“如何使用Python Celery动态添加定时任务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、背景实际工作中...
    99+
    2023-07-06
  • 如何用css3制作按钮并添加动态效果
    本篇内容主要讲解“如何用css3制作按钮并添加动态效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何用css3制作按钮并添加动态效果”吧! ...
    99+
    2024-04-02
  • Vue中form表单动态如何添加组件
    这篇文章给大家分享的是有关Vue中form表单动态如何添加组件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。效果如下:这种效果实现其实就是对 v-for 指令的一种使用,组件不是...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作