Tag: angularjs

AngularJS多重filter具有自定义过滤function

我正在尝试使用多个filter+自定义filter函数来过滤列表。 原来的工作jsfiddle的例子是http://jsfiddle.net/ed9A2/1/,但现在我想改变年龄正在过滤的方式。 我想添加一个自定义filter,以便根据两个input值min_age和max_age (年龄之间)进行过滤。 看了doc后。 我发现有人有类似的问题和用户马克Rajcok回答http://docs.angularjs.org/api/ng.filter:filter#comment-648569667看起来不错,应该工作。 但我有问题应用到我的代码主要似乎是因为我有其他多个filter。 我很新AngularJS 🙁 我尝试过,不工作的小提琴在这里http://jsfiddle.net/ed9A2/20/ 我的NOT工作代码的复制粘贴在这里 视图 <div ng-app ng-controller="MainController"> <table class="fancyTable"> <tr> <th>Player id</th> <th>Player name</th> <th>Age</th> </tr> <tr> <td><input ng-model="player_id" /></td> <td><input ng-model="player_name" /></td> <td> Min Age:<input ng-model="min_age" /> Max Age:<input ng-model="max_age" /> </td> </tr> <tr ng-repeat="player in players | filter:{id: player_id, name:player_name, age:ageFilter}"> <td>{{player.id}}</td> <td>{{player.name}}</td> <td>{{player.age}}</td> </tr> […]

单页面应用程序 – 基于局部视图dynamic加载js文件

我刚刚开始学习Angular,并按照这里的教程 – http://docs.angularjs.org/tutorial/step_00 我从GitHub下载了种子示例,效果很好。 我有一个问题,但如果一个局部视图需要一个外部js文件被引用,它是否需要被添加到index.html文件的开始? 我希望应用程序尽可能精简,只想包含当前视图所需的js引用。 是否有可能基于视图dynamic加载js文件?

如何跳过AngularJS中的OPTIONS预检请求

我开发了一个PhoneGap应用程序,现在正在转换到一个手机网站。 一切工作顺利,除了一个小故障。 我通过POST请求使用某个第三方API,在应用程序中正常工作,但在移动网站版本中失败。 经过仔细观察,看起来像AngularJS(我猜是浏览器)首先发送一个OPTIONS请求。 今天我学到了很多关于CORS的知识,但似乎无法弄清楚如何完全禁用它。 我没有访问该API的权限(所以在这一方的更改是不可能的),但他们已经将我正在工作的域添加到他们的Access-Control-Allow-Origin头。 这是我正在谈论的代码: var request = { language: 'fr', barcodes: [ { barcode: 'somebarcode', description: 'Description goes here' } ] }; } var config = { headers: { 'Cache-Control': 'no-cache', 'Content-Type': 'application/json' } }; $http.post('http://somedomain.be/trackinginfo', request, config).success(function(data, status) { callback(undefined, data); }).error(function(data, status) { var err = new Error('Error message'); err.status […]

如何select下拉protractorjs e2etesting的选项

我正在尝试使用量angular器从angular度e2etesting的下拉列表中select一个选项。 以下是select选项的代码片段: <select id="locregion" class="create_select ng-pristine ng-invalid ng-invalid-required" required="" ng-disabled="organization.id !== undefined" ng-options="o.id as o.name for o in organizations" ng-model="organization.parent_id"> <option value="?" selected="selected"></option> <option value="0">Ranjans Mobile Testing</option> <option value="1">BeaverBox Testing</option> <option value="2">BadgerBox</option> <option value="3">CritterCase</option> <option value="4">BoxLox</option> <option value="5">BooBoBum</option> </select> 我努力了: ptor.findElement(protractor.By.css('select option:1')).click(); 这给了我以下错误: 一个无效的或非法的string指定构build信息:版本:'2.35.0',修订:'c916b9d',时间:'2013-08-12 15:42:01'系统信息:os.name:'Mac OS X' ,os.arch:'x86_64',os.version:'10 .9',java.version:'1.6.0_65'驱动程序信息:driver.version:unknown 我也试过了: ptor.findElement(protractor.By.xpath('/html/body/div[2]/div/div[4]/div/div/div/div[3]/ng-include/div/div[2]/div/div/organization-form/form/div[2]/select/option[3]')).click(); 这给了我以下错误: ElementNotVisibleError:元素当前不可见,所以不能与命令持续时间或超时进行交互:9毫秒构build信息:版本:'2.35.0',修订版:'c916b9d',时间:'2013-08-12 15:42: 01'系统信息:os.name:'Mac […]

AngularJS不发送隐藏的字段值

对于一个特定的用例,我必须提交一个单一的表格“旧的方式”。 意思是,我使用一个forms与行动=“”。 响应stream,所以我不重新加载页面。 我完全知道,一个典型的AngularJS应用程序不会以这种方式提交表单,但到目前为止,我没有其他select。 这就是说,我试图从Angular中填充一些隐藏的字段: <input type="hidden" name="someData" ng-model="data" /> {{data}} 请注意,数据中显示正确的值。 该表单看起来像一个标准的forms: <form id="aaa" name="aaa" action="/reports/aaa.html" method="post"> … <input type="submit" value="Export" /> </form> 如果我点击提交,没有值发送到服务器。 如果我将input字段更改为键入“文本”它按预期的方式工作。 我的假设是隐藏的字段不是真正填充的,而文本字段实际上是双向绑定显示的。 任何想法,我可以提交一个由AngularJS填充的隐藏字段?

AngularJS – 将指令传递给函数

我有一个例子angularJS <div ng-controller="testCtrl"> <test color1="color1" updateFn="updateFn()"></test> </div> <script> angular.module('dr', []) .controller("testCtrl", function($scope) { $scope.color1 = "color"; $scope.updateFn = function() { alert('123'); } }) .directive('test', function() { return { restrict: 'E', scope: {color1: '=', updateFn: '&'}, template: "<button ng-click='updateFn()'>Click</button>", replace: true, link: function(scope, elm, attrs) { } } }); </script> </body> </html> 我想单击button时,警告框会出现,但没有显示。 任何人都可以帮我吗?

AngularJS $ http-post – 将二进制文件转换为excel文件并下载

我已经在Angular JS中创build了一个用于通过$ http post下载Excel工作簿的应用程序。 在下面的代码中,我以JSON的forms传递信息,并通过angular度$ http发送到服务器REST Web服务(Java)。 Web服务使用来自JSON的信息并生成Excel工作簿。 在$ http post的成功主体内的响应中,我正在获取该数据variables中的二进制数据,但不知道如何将其转换并下载为Excel文件。 任何人都可以请告诉我一些解决scheme为此将二进制转换为Excel文件和下载? 我的代码如下所示: $http({ url: 'myweb.com/myrestService', method: "POST", data: json, //this is your json data string headers: { 'Content-type': 'application/json' } }).success(function (data, status, headers, config) { // Here i'm getting excel sheet binary datas in 'data' }).error(function (data, status, headers, config) { });

AngularJs – 取消路线变更事件

如何取消AngularJs中的路由更改事件? 我目前的代码是 $rootScope.$on("$routeChangeStart", function (event, next, current) { // do some validation checks if(validation checks fails){ console.log("validation failed"); window.history.back(); // Cancel Route Change and stay on current page } }); 即使validation失败,Angular也会提取下一个模板和关联的数据,然后立即切换回上一个视图/路由。 如果validation失败,我不希望拉动下一个模板和数据,理想情况是不应该有window.history.back()。 我什至试过event.preventDefault()但没用。

在app config,angular.js中使用自定义提供程序中的$ http

主要的问题 – 可能吗? 我试过没有运气.. 主app.js … var app = angular.module('myApp', ['services']); app.config(['customProvider', function (customProvider) { }]); … 提供者本身 var services = angular.module('services', []); services.provider('custom', function ($http) { }); 而我有这样的错误: Uncaught Error: Unknown provider: $http from services 有任何想法吗? 谢谢!

ngModel格式器和parsing器

我以不同的forms发布了相同的问题,但没有人回答。 我没有清楚地知道格式化器和parsing器在angular度js中所做的事情。 根据定义,格式化器和parsing器看起来和我很相似。 也许我错了,因为我是新来的这个angularjs。 格式化程序定义 每当模型值发生变化时,作为pipe道执行的函数数组。 每个函数被调用,然后将值传递给下一个。 用于格式化/转换在控件和validation中显示的值。 parsing器定义 只要控件从DOM读取值,就可以作为pipe道执行这些函数的数组。 每个函数被调用,然后将值传递给下一个。 用于清理/转换值以及validation。 为了进行validation,parsing器应该使用$ setValidity()更新有效性状态,并为无效值返回undefined。 请用一个简单的例子来帮助我理解这两个特性。 两个简单的例子将不胜感激。