当我点击保存button时,它会触发一个ng-blur事件,我怎样才能让buttonng-click事件触发呢? 我仍然希望ng-blur事件触发,如果我点击outsidabutton或input字段。 http://jsfiddle.net/tidelipop/wyjdT/ angular.module('MyApp', []) .filter("placeholder", function(){ return function (text, length, end) { //console.log(typeof text, text, length); if(typeof text === 'undefined' || text == ''){ text = 'Click to edit…'; } return text; }; }) .directive("inlineEdit", function($compile, $q){ return { restrict: "A", replace: true, template: function(tElement, tAttrs){ var modelStr = tAttrs.inlineEdit, optionsStr = tAttrs.options, modelXtra […]
testingangular度网格(ng-grid v.3.0)。 不能为我的生活find选定的行。 我只想抓住行的行数,甚至当用户点击行的行数时。 在这里find最热门的评论,但我认为这已经过时了: 从ng-grid获取选定的行? 有没有人知道在哪里gridOptions.selectedItems被存储在3.0?
我有几个自定义指令,使用jQuery的animation效果(angular度内置的ngShow / ngHide等function,但不漂亮)。 我想我记得在文档中的angular度有自己的DOMselect器(类似angular.export()或angular.select() ),我应该使用,而不是$(SELECTOR) ; 但是我现在找不到它。 我正在做这样的事情: //view <div scroll-to="element"> //`element` is set via ng-click … </div> //directive link: function(scope, elm, attrs) { scope.$watch(attrs.scrollTo, function scrollToAction(newValue,oldValue) { if ( newValue !== oldValue ) { elm.animate({ scrollTop: $('#'+newValue).offset().top //replace jquery selector with angular's – elm.offset().top + elm.scrollTop() }); } }); } 我没有真正操纵$('#'+newValue) ,只是检索有关它的信息,所以我不认为我犯了一个反Angular的犯罪。
我无法弄清楚为什么我的简单的AngularJS应用程序不按预期工作。 “Loading …”应该是隐藏的,“完成!” 应在1秒后显示。 HTML: <div ng-app> <div ng-controller="TestCtrl"> <div class="text-center" ng-show="loading"> <h1>Loading…</h1> </div> <div class="text-center" ng-show="!loading"> <h1>Done!</h1> </div> </div> </div> 使用Javascript: function TestCtrl($scope) { $scope.loading = true; setTimeout(function () { $scope.loading = false; }, 1000); }
有没有一种方法可以使用ng-if来testing一个variables是否被定义,而不仅仅是真的吗? 在下面的示例( 实时演示 )中,HTML仅显示红色项目的运费,因为item.shipping既定义了非零值。 我也想显示一个蓝色项目(发货定义,但零)的成本,但不是为绿色项目(航运未定义)。 JavaScript的: app.controller('MainCtrl', function($scope) { $scope.items = [ { color: 'red', shipping: 2, }, { color: 'blue', shipping: 0, }, { color: 'green', } ]; }); HTML: <body ng-controller="MainCtrl"> <ul ng-repeat='item in items'> <li ng-if='item.color'>The color is {{item.color}}</li> <li ng-if='item.shipping'>The shipping cost is {{item.shipping}}</li> </ul> </body> 我试着做ng-if='angular.isDefined(item.shipping)' ,但没有奏效。 也不ng-if='typeof(item.shipping) !== undefined' […]
当我的应用程序加载设置默认状态时,我想做一些事情。 所以我试图在Module对象上使用run方法。 当我尝试访问$ scopevariables,虽然我得到一个“Uncaught ReferenceError:$ scope is not defined”消息在我的控制台。 看下面的例子http://jsfiddle.net/F2Z2X/1/ app = angular.module('myapp', []); app.controller('mycontroller', function($scope){ $scope.data = { myvariable: 'Hello' }; }); app.run( alert($scope.data.myvariable)) ); 我是否全部错了? 例如,我想在开始时运行一次watchAction函数,以隐藏尚未调用的UI元素,但是watchAction函数没有$ scope对象,因为它没有被watch方法调用,所以我必须把它传递给它,但唉,它不可用。
我想从当前URL中提取数据并在控制器中使用它。 例如,我有这个url: app.dev/backend/surveys/2 我想提取的位: app.dev/backend/:type / :id Angular中有什么可以帮助我完成这个任务吗?
想象一下,一个应用程序有一个List页面,比如一个显示用户列表的表格。 表格的每一行都有一个名为“编辑”的button,点击该button后,浏览器的右侧出现一个右侧面板,编辑该用户的内容。 当表单被保存或closures时,右侧面板消失。 在编辑状态input和退出时,如何让Angular UI Router自动显示/隐藏右侧面板? 默认情况下,模板将被添加和删除,但容器本身仍然存在于屏幕上。 在UI路由器的演示应用程序中,html布局具有为所有子状态分配的空白空间,但在构build的应用程序中,如果不使用它们,我真的很喜欢隐藏面板,甚至可以将整个屏幕滑入随着国家进入和退出而退出。 我猜测我必须使用ng-show和ng-hide才能做到这一点。 我如何通过UI路由器来解决这个问题? 谢谢!
当我运行karma start时,我得到一个错误: $ karma start INFO [karma]: Karma v0.10.2 server started at http://localhost:9876/ INFO [launcher]: Starting browser Chrome WARN [preprocess]: Can not load "ng-html2js", it is not registered! Perhaps you are missing some plugin? … 但是在我的包文件中,我有"karma-ng-html2js-preprocessor": "*",并且此预处理器的代码文件夹存在于node_modules 。 任何想法如何解决这个问题?
我想添加一个活动类点击列表中,我尝试了下面的代码,但它增加了我的所有项目上的活动类:/: HTML: <div class="filters_ct" ng-controller="selectFilter"> <ul> <li ng-repeat="filters in filter" ng-click="select(item)" ng-class="{sel: item == selected}"> <span class="filters_ct_status"></span> {{filters.time}} </li> </ul> </div> Js: var filters = [ { 'filterId': 1, 'time': 'last 24 hours', }, { 'filterId': 2, 'time': 'all', }, { 'filterId': 3, 'time': 'last hour', }, { 'filterId': 4, 'time': 'today', }, { 'filterId': […]