Tag: angularjs

AngularJS动态表单字段ID,指令不起作用

尝试将指令添加到具有动态id的输入时,链接方法无法正确绑定到该对象。 给出以下jsfiddle或html: Date: 并且js: var module = angular.module(‘myApp’, []); module.directive(‘datepicker’, function() { var linker = function(scope, element, attrs) { element.datepicker(); } return { restrict: ‘A’, link: linker } }); function MyCtrl($scope) { $scope.id = 7 } 我在控制台调试器上看到的是,当调用链接时,它会将id显示为“datepicker – {{id}}”而不是“datepicker-7”。 有没有办法强迫这种情况发生? 实现这个的更好方法是什么? 更新 :应该澄清一下。 单击时会显示日期选择器,但单击日期不起作用。 我收到错误:“此日期选择器未捕获的实例数据”

jquery metismenu无法使用AngularJS控制器加载数据异步

我有Jquerymetis菜单的问题。 我想从数据库加载菜单元素,我正在使用AngujarJS控制器来获取带有菜单元素的JSON。 这是AngularJSController var appControllers = angular.module(‘appControllers’, []); appControllers.controller(‘MenuCtrl’, [‘$scope’, ‘$http’, function ($scope, $http) { var url = “/api/Menus/GetMenuElements”; $http.post(url). success(function (data, status, headers, config) { $scope.menuElements = data; console.log(“Success”); }). error(function (data, status, headers, config) { console.log(“Error”); }); }]); 然后在我的ASP.NET MVC项目的PartialView中,我有Angular指令将元素添加到菜单中。 {{elementL1.NAME}} {{elementL1.NAME}} 0″ class=”nav nav-second-level”> {{elementL2.NAME}} 0″ class=”nav nav-third-level”> {{elementL3.NAME}} 这样就可以将元素添加到菜单中,但它不能用于折叠和展开。 它扩大了,我不能崩溃元素。 我认为问题是我必须拨打$(‘#side-menu’).metisMenu(); […]

AngularJS:在html上使用$ compile,其中包含带有templateurl的指令

我有一个遗留应用程序,它通过jQuery将一些内容插入到DOM中。 我希望代码库的遗留部分负责编译它插入DOM的html。 我可以使用$compile来编译初始html,但是不会编译由指令的模板或templateUrl添加的任何DOM元素,除非我从指令本身调用$scope.$apply() 。 我在这做错了什么? 链接到小提琴: http : //jsfiddle.net/f3dkp291/15/ 的index.html 的application.js angular.module(‘app’, []).directive(‘debug’, function() { return { restrict: ‘E’, template: “scope {{$id}} loaded from {{source}}”, link: function($scope, el, attrs) { $scope.source = attrs.source if( attrs.autoApply ) { // this works $scope.$apply() } }, scope: true } }) // mimic an xhr request setTimeout(function() { var […]

ng-focus和ng-blur事件不会在Angularjs中触发

当输入框被聚焦时,不会调用函数tryFunc() 。 我在文件中包含jQuery.min.js ,它位于angular.min.js之前,jQuery是版本v1.10.2,Angular.js是v1.0.7。 可能会发生什么?

将gridstack.js包装到Angular 2组件中

我有一些Angular 1经验,但我们需要在Angular 2项目中使用gridstack.js 。 我们熟悉gridstack-angular项目,但该项目是在Angular 1中。我认为我遇到的最大问题是Angular 2概念。 任何帮助,将不胜感激。

AngularJs中$ interval和setInterval之间的差异

我试图理解$ interval和setInterval之间的区别。 我有这个测试: Dashboard.prototype.updateTotalAppointments = function(){ //console.log(); this.appointmentsCount = this.appointmentsCount +1; console.log(this.appointmentsCount); }; Dashboard.prototype.start = function(){ setInterval(function(){ this.updateTotalAppointments(); }.bind(this), 3000); } > div class=”hb-info-card-data-count”>{{dashCtrl.appointmentsCount}} 使用setInterval不会更新HTML页面上的值,但该值实际上会在浏览器控制台上更改,但它不会在Html页面上更新。 但如果我这样做: Dashboard.prototype.start = function(){ $interval(function(){//using $interval seems to work fine this.updateTotalAppointments(); }.bind(this), 3000); } 这似乎完美,所以我真的不知道为什么后者不起作用,但我真的很想知道。 此外,从背景中不断请求数据的最佳方式是每隔n分钟,并通过其控制器更新页面。

angular.js监听按键作为按钮的快捷方式

我的第一个角应用程序是一个非常基本的调查工具。 我有多个选择题,每个答案都有一个按钮,还有一个基本function,可以按下按钮点击每个答案,如下所示: ng-click=”logAnswer(answer.id)” 我正在寻找的是能够在文档中添加一个按键事件,该事件将监听1,2,3,4,5的键盘响应,该响应与按钮选项匹配并调用相同的function。 在搜索时,我只能在特定输入字段具有焦点时找到与按键相关的响应,这对我没有帮助。 我确实在这篇文章中找到了OPs响应Angular.js按键事件和工厂似乎朝着正确的方向前进,但我无法弄清楚我如何得到他的指令来调用我的函数。 我在我的js中包含了该指令: angular.module(‘keypress’, []).directive(‘keypressEvents’, function($document, $rootScope) { return { restrict: ‘A’, link: function() { $document.bind(‘keypress’, function(e) { $rootScope.$broadcast(‘keypress’,e , String.fromCharCode(e.which)); }); } } }) 但我不确定如何使用控制器中的键绑定对象: function keyedS(key, parent_evt, evt){ // key is the key that was pressed // parent_evt is the keypress event // evt is the focused element object […]

AngularJS v1.2.5脚本错误,使用IE11的textarea和占位符属性

我有一个Angular JS v1.2.5表单,在IE11中不起作用。 它在Firefox,Chrome,Safari中运行良好。 我的表单在占位符属性中使用带插值的textarea。 Hello {{ name }}! 如果使用插值指定占位符属性,则会出现以下错误(仅在IE中)。 Error: Invalid argument. at interpolateFnWatchAction (https://localhost:44300/Scripts/angular.js:6410:15) at $digest (https://localhost:44300/Scripts/angular.js:11581:23) at $apply (https://localhost:44300/Scripts/angular.js:11832:13) at done (https://localhost:44300/Scripts/angular.js:7774:34) at completeRequest (https://localhost:44300/Scripts/angular.js:7947:7) at onreadystatechange (https://localhost:44300/Scripts/angular.js:7903:11) 这是一个在Firefox,Chrome,Safari中运行良好的Plnkr – 但不适用于IE11。 http://plnkr.co/edit/4cJzxtVSDoL2JMI9nYrS?p=preview 我失去了尝试在Angular.js内部进行调试。 我真的很感激有任何提示让我朝着正确的方向前进。 谢谢。

jQuery scrollTop()为所有元素返回0

在我的工作中,我们有一个用AngularJS创建的单页网站。 我们正在使用ui-router插件(版本0.2.0)。 最近我注意到当从一个状态移动到另一个状态时,窗口不会滚动到顶部。 我甚至试图在每次状态更改时使用jQuery的scrollTop()函数手动滚动到顶部(使用$stateChangeSuccess事件)。 但它没有用。 所以我开始调查,我注意到scrollTop()为页面上的每个元素返回0。 不仅如此,当我将window.scrollY打印到控制台时,我得到0(无论我在页面上的哪个位置)。 不仅在我的代码中,而且即使我只是在chrome dev工具控制台中编写它。 我用AngularJS和ui-router编写了几个应用程序,它只发生在这个特定的应用程序中。 我已经检查过是否覆盖了scrollTop()函数甚至是window.scrollY字段,但是没有找到任何东西。 我尝试使用ui-view和autoscroll=”true”并使用autoscroll=”false” ,但它并没有什么区别。 我也试过给html和body元素height:100% ,我也没试过。 但没什么。 我真的不知道接下来该做什么。 我无法重现这个问题,但如果您认为我应该在这里发布任何可以提供任何帮助的代码,我会很乐意这样做。 谢谢! 编辑: 我在控制台上运行此function: var l = $(‘*’).length; for(var i = 0; i 0) { console.log(elem, elem.scrollTop()); } } 该function只打印出一个带有顶部滚动的元素。 元素是一个包装div,它包含整个内容和主视图(我的应用程序中有嵌套视图)。 如果我在这个元素上使用scrollTop(0) ,我得到了我想要的东西,但它只处理症状,而不是真正的问题。

角度js不工作,即11

在ie 11工作angular js我有问题 TypeError:在链接( ves-min.js:490:7 )的严格模式下,不允许在只有Anonymous function (angular.js:7079:34)的严格模式下赋值为只读属性在ves-min.js:490:7处enter code here nodeLinkFn (angular.js:6677:13)在compositeLinkFn (angular.js:6071:13 )at publicLinkFn (angular.js:5967:30) at link (angular-route.js:919:7) at boundTranscludeFn (angular.js:6091:9) 请帮我解决一下,谢谢。