Tag: angularjs

AngularJS组checkboxvalidation

我有一个checkbox的列表,其中至less有一个是强制性的。 我试图通过AngularJSvalidation来实现这一点,但是很难。 以下是我的代码: // Code goes here for js var app = angular.module('App', []); function Ctrl($scope) { $scope.formData = {}; $scope.formData.selectedGender = ''; $scope.gender = [{ 'name': 'Male', 'id': 1 }, { 'name': 'Female', 'id': 2 }]; $scope.formData.selectedFruits = {}; $scope.fruits = [{ 'name': 'Apple', 'id': 1 }, { 'name': 'Orange', 'id': 2 }, { […]

与Angularjs jQuery ui datepicker

我想用AngularJS使用jQuery UI datepicker。 我有一个示例,但我的代码不起作用。 样品: http://www.abequar.net/jquery-ui-datepicker-with-angularjs/ 我的代码: <input id="sDate" name="programStartDate" type="text" datepicker required/> angular.module('elnApp') .directive('datepicker', function () { return { restrict: 'A', require : 'ngModel', link : function (scope, element, attrs, ngModelCtrl) { $(function(){ element.datepicker({ dateFormat:'yy-mm-dd', onSelect:function (date) { ngModelCtrl.$setViewValue(date); scope.$apply(); } }); }); } } }); 它显示一个错误TypeError: Object [object Object] has no method 'datepicker' […]

如何解决Angular“10 $ digest()迭代到达”错误

达到10 $ digest()迭代。 中止! 在“最近5次迭代中发起的观察者”中有很多支持文本,但是很多这个文本是来自各种函数的Javascript代码。 有诊断这个问题的经验法则吗? 问题总是可以缓解的,还是有足够复杂的应用程序,这个问题应该被视为警告?

AngularJS:观察高度变化的更好方法

我有旧的variables高度导航问题:一个position: fixes导航顶部和margin-top: $naviHeight的内容margin-top: $naviHeight下面。 导航可以在数据asynchronous加载时更改高度,因此内容的边距必须随之改变。 我希望这是自足的。 所以没有代码在哪里加载数据,但只在所涉及的HTML元素/指令。 目前我正在AngularJS 1.2.0中使用这样的计时器: /* * Get notified when height changes and change margin-top */ .directive( 'emHeightTarget', function(){ return { link: function( scope, elem, attrs ){ scope.$on( 'heightchange', function( ev, newHeight ){ elem.attr( 'style', 'margin-top: ' + (58+newHeight) + 'px' ); } ); } } }) /* * Checks this […]

这个视图在AngularJS中没有更新

更新模型属性在更新事件callback模型时对视图没有影响,有什么想法来解决这个问题? 这是我的服务: angular.service('Channel', function() { var channel = null; return { init: function(channelId, clientId) { var that = this; channel = new goog.appengine.Channel(channelId); var socket = channel.open(); socket.onmessage = function(msg) { var args = eval(msg.data); that.publish(args[0], args[1]); }; } }; }); publish()函数是在控制器中dynamic添加的。 控制器: App.Controllers.ParticipantsController = function($xhr, $channel) { var self = this; self.participants = []; […]

Angularjs简单的文件下载

HTML: <a href="mysite.com/uploads/asd4a4d5a.pdf" download="foo.pdf"> 在数据库中保存真实姓名时,上传将获得唯一的文件名。 我想实现一个简单的文件下载。 但是上面的代码redirect到/因为: $routeProvider.otherwise({ redirectTo: '/', controller: MainController }); 我试着用 $scope.download = function(resource){ window.open(resource); } 但是这只是在新窗口中打开文件。 任何想法如何启用一个真正的下载任何文件types?

如何只允许input一个数字(数字和小数点)?

我是angularjs的新手。 我想知道什么是只允许一个有效的数字input到一个文本框的方式。 例如,用户可以input“1.25”,但不能input“1.a”或“1 ..”。 当用户尝试input下一个字符时,会使其成为无效的数字,他无法input。 提前致谢。

AngularJS指令:更改$范围不反映在用户界面

我试图用AngularJS做一些自定义元素,并绑定一些事件,然后我注意到$ scope.var在绑定函数中使用时不会更新UI。 这是一个简单的例子,描述了probelm: HTML: <!doctype html> <html ng-app="test"> <head> <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.min.js"></script> <script src="script.js"></script> </head> <body> <div ng-controller="Ctrl2"> <span>{{result}}</span> <br /> <button ng-click="a()">A</button> <button my-button>B</button> </div> </body> </html> JS: function Ctrl2($scope) { $scope.result = 'Click Button to change this string'; $scope.a = function (e) { $scope.result = 'A'; } $scope.b = function (e) { $scope.result = […]

无法到达$ rootScope

下面的文件“工作”(它不会抛出任何错误的意义): <!doctype html> <html ng-app="modx"> <script src="http://code.angularjs.org/angular-1.0.0rc7.js"></script> <script> angular.module("modx", [], function($routeProvider) { }); </script> </html> 但是这个 <!doctype html> <html ng-app="modx"> <script src="http://code.angularjs.org/angular-1.0.0rc7.js"></script> <script> angular.module("modx", [], function($routeProvider, $rootScope) { }); </script> </html> 给出错误: 错误:未知提供者:modx的$ rootScope 源文件: http : //code.angularjs.org/angular-1.0.0rc7.js 线路:2491 WTF?

在AngularJS中观看模型更改时,如何忽略初始负载?

我有一个网页作为单个实体的编辑器,它在$ scope.fieldcontainer属性中是一个深层图。 在我的REST API(通过$ resource)获得响应之后,我将一个手表添加到“fieldcontainer”中。 我正在使用此手表来检测页面/实体是否“脏”。 现在我正在使保存button反弹,但我真的想让保存button隐藏,直到用户弄脏模型。 我得到的是手表的一个触发器,我认为这是因为.fieldcontainer = …赋值在我创build手表后立即发生。 我正在考虑使用“dirtyCount”属性来吸收最初的虚警,但这感觉非常黑客…我认为必须有一个“Angular idiomatic”方式来处理这个问题 – 我不是唯一使用手表来检测脏模型。 以下是我设置手表的代码: $scope.fieldcontainer = Message.get({id: $scope.entityId }, function(message,headers) { $scope.$watch('fieldcontainer', function() { console.log("model is dirty."); if ($scope.visibility.saveButton) { $('#saveMessageButtonRow').effect("bounce", { times:5, direction: 'right' }, 300); } }, true); }); 我只是一直认为有一个更清洁的方式来做这个比“if(dirtyCount> 0)”守护我的“UI污染”代码…