Angularjs Material
公司用Angularjs Material进行开发,之前在网站上看了一些Demo,做一个学习的整理。
1、新建窗体的数据绑定
1.1修改kendo表格新增页面按钮,添加按钮,并Dialog一个窗体
toolbar: [
{ template: "<a class='k-button k-button-icontext' ng-click='edit()'><span class='k-icon k-add'></span>新增</a> " },
{ template: "<a class='k-button k-button-icontext' ng-click='demo()'><span class='k-icon k-i-ungroup'></span>测试</a> " },
],
//跳出新增界面
$scope.edit = function (e) {
$mdDialog.show(
{
controller: DialogController,
templateUrl: 'basedata/views/NotamNoticeWarehouseAdd.html',
parent: angular.element(document.body), // targeEvent: ev,
clickOutsideToClose: true,
})
}
function DialogController($rootScope, $scope, $mdDialog) {
$scope.vm = {};
$scope.vm.ID = newGuid();
console.log($scope.vm);
$scope.save = function () {
$http({
method: 'post',
url: $rootScope.baseUrl + "odata/NotamNoticeWarehouse",
data: $scope.vm,
dataType: 'odata',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + $window.sessionStorage["userToken"], 'If-Modified-Since': '0'
}
}).then(function (result) {
if (result.status == "201") {
console.log($scope);
$mdDialog.cancel();
$state.reload("app.NotamNoticeWarehouse");
}
}, function (error) {
console.log(error);
});
}
$scope.cancel = function () {
$mdDialog.cancel();
};
}
1.2选择表格中的某一行,点击编辑,进行数据绑定,与读取
{
command: [{
name: "EditChange",
template: function (e, s) {
return "<a class='k-button' href='' ng-click='EditChange()'><span class='k-icon k-i-ungroup'></span>编辑</a>"
},
},
{ name: "destroy" }], width: "188px"
}
//编辑界面
var dataItem = [];
$scope.EditChange = function () {
var grid = $("#grid_app").data("kendoGrid");
console.log(grid)
var selectedRows = grid.select();
console.log(selectedRows)
dataItem = grid.dataItem(selectedRows);
console.log(dataItem)
if (selectedRows.length == 0) {
alert("请选择要查看的条目");
$state.go("app.NotamNoticeWarehouse");
return false;
}
$mdDialog.show({
controller: AirperformanceController,
templateUrl: 'basedata/views/NotamNoticeWarehouseAdd.html',
parent: angular.element(document.body),
clickOutsideToClose: true,
cache: false,
// fullscreen: $scope.customFullscreen,
}).then(function (answer) {
$scope.status = 'You said the information was "' + answer + '".';
}, function () {
$scope.status = 'You cancelled the dialog.';
});
};
function AirperformanceController($scope, $mdDialog) {
$scope.cancel = function () {
$mdDialog.cancel();
};
$scope.vm = {};
if (dataItem != null) {
$scope.vm = dataItem; console.log($scope.vm);
$scope.save = function () {
console.log($scope.vm)
$http({
method: 'put',
url: $rootScope.baseUrl + "odata/NotamNoticeWarehouse" + "(" + $scope.vm.ID + ")",
data: $scope.vm,
dataType: 'odata-v4',
headers: {
'Content-Type': 'application/json', 'action': 'ch_update',
'Authorization': 'Bearer ' + $window.sessionStorage["userToken"], 'If-Modified-Since': '0',
}
}).then(function (result) {
console.log(result);
if (result.status == "204") {
console.log($scope);
$mdDialog.cancel();
$state.reload("app.NotamNoticeWarehouse");
}
}, function (error) {
console.log(error); if (error.data.resultCode == -1) {
//alert(e.xhr.responseJSON.resultMsg);
window.location = 'error.html';
} else {
alert("查询失败");
}
});
} }
}
2、在提醒相关部门下拉框内,绑定某个数据库中部门字段

// 提醒相关部门绑定数据
var dataComeNearType = [];
$http({
url: $rootScope.baseUrl + "odata/ComeNearType",
method: 'GET',
//headers: {
// 'Content-Type': 'application/json',
// 'Authorization': 'Bearer ' + $window.sessionStorage["userToken"], 'If-Modified-Since': '0'
//}
}).success(function (data) {
console.log(data)
dataComeNearType = data.value;
}).error(function (err) {
//处理响应失败
console.log(err);
}); //绑定数据
$scope.loadDep = function () {
var data = [];
console.log(dataComeNearType)
for (var i = ; i < dataComeNearType.length; i++) {
data.push(dataComeNearType[i].ComeNeartype);
}
$scope.ComeNeartypeData = data;
console.log($scope.ComeNeartypeData)
return $scope.ComeNeartypeData;
};
<md-input-container>
<label>提醒相关部门</label>
<md-select name="Dep" ng-model="vm.Dep" style="min-width:180px;" required md-on-open="loadDep()">
<md-option ng-value="Dep" ng-repeat="department in ComeNeartypeData">{{department}} </md-option>
</md-select>
</md-input-container>
Angularjs Material的更多相关文章
- 内部技术分享的 PPT
本文的基础是搞了一次内部的技术分享,在此也分享一下本次的PPT的一些内容.先列一下大概内容吧. EF-Code First API(WCF.WebAPI) Xaml MVVM AOP Xamarin. ...
- [AngularJS] angular-md-table for Angular material design
Download from npm:https://www.npmjs.com/package/angular-md-table +: Responsive: Has both Mobile view ...
- angularJS学习资源最全汇总
基础 官方: http://docs.angularjs.org angularjs官方网站已被墙,可看 http://www.ngnice.com/: 官方zip下载包 https://github ...
- 使用 AngularJS 和 Electron 构建桌面应用
GitHub 的 Electron 框架(以前叫做 Atom Shell)允许你使用 HTML, CSS 和 JavaScript 编写跨平台的桌面应用.它是io.js 运行时的衍生,专注于桌面应用而 ...
- 20个免费的 AngularJS 资源和开发教程
曾经,jQuery 无疑是最受欢迎的开源的 JavaScript 库,如今它有了很多的竞争对手,像 AngularJS.React.KnockoutJS 等等.在这里,我想重点关注一下 Angular ...
- angularjs 延迟更新和angularjsUI
angularjsUI库https://material.angularjs.org/latest/ ng-model-options="{ updateOn: 'blur' }" ...
- 拟物设计和Angular的实现 - Material Design(持续更新)
Material Design是Google最新发布的跨平台统一视觉设计语言.直接翻译是物质设计,但是我更倾向于使用"拟物设计"更为准确. 据谷歌介绍,Material Desig ...
- 深入探索AngularJS(持续更新)
数据双向绑定并不是Angular最出彩的地方.大部分对AngularJs的介绍都偏重于使用,使用的学习只是学了AngularJs的API,而那只能AngularJs的很小一部分.随着使用越来越深,系统 ...
- 通过Anuglar Material串串学客户端开发 - javascript编译和gulpfile.js
Angular Material不仅仅有本身框架的源代码,还有在这个框架上实现的一个应用docs.更为强大的是,这个应用是真正的产品网站:就是它的官网.我有理由相信,这个网站是从源代码直接发布的,从网 ...
随机推荐
- 一天搞定HTML----常用标签01
1.常用标签说明 2.其他类标签演示 代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8& ...
- wpf XAML xaml 进行 数据绑定,Resource DataContext ElementName
先做个声明:这里绑定都在前台实现,至于后台怎么写,那比前台简单多了,但更常用的是xaml中绑定.我们分析下最简单的字符串绑定来弄清楚原理,其他的类推就是. 数据绑定主要是要弄清楚两个东西,一个是源So ...
- Kotlin尝试之一:写代码前的准备
Kotlin是一种静态类型的编程语言,可在Java虚拟机上运行,也可以编译为JavaScript源代码. 其主要发展来自位于俄罗斯圣彼得堡的JetBrains程序员团队. 虽然语法与Java不兼容,但 ...
- Java中的static、final关键字
static static 的含义是静态的,是一个静态修饰符,一般来说,被static修饰的有以下几种,类.变量.方法.代码块. static修饰类 Java中普通的类是不允许被声明为静态的,但是有一 ...
- Jmeter元件运行顺序
JMeter执行顺序逻辑如下: 1.配置元件(如果存在) 2.前置处理器(如果存在) 3.定时器(如果存在) 4.取样器(如果存在) 5.后置处理器(如果存在且取样器的结果不为空) 6.断言(如果存在 ...
- Vulkan Tutorial 20 Vertex buffer creation
操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Visual Studio 2017 Introduction 在Vulkan中,缓冲区是内存的一块区域,该区域用于向显卡 ...
- ecshop循环计数
循环依次递增+1 <!-- {foreach from=$comments item=comment name=comment} --> {$smarty.foreach.comment. ...
- flask笔记一
最近学习flask,由于web开发方面接触的并不是很多,所以看官方文档有点焦头烂额,好多的概念不理解. <Flask web 开发>比较基础,先用这本书做个入门. 1.Flask实例化对象 ...
- 简单轻量级的一套JS 类库(RapidDevelopmentFramework.JS)
1.最近好久没有更新自己的博客了,一直在考虑自己应该写一些什么.4.2日从苏州回到南京的路上感觉自己的内心些崩溃和失落,我就不多说了? 猛然之间我认为自己需要找一下内心的平衡.决定开发属于自己一套快速 ...
- 使用linux sort给一个文件里的内容按规则排序
任务:report.txt文件里有以下内容:记录了一些方法的执行时间,要求按执行时间降序排列. void com.dustpan.zeus.core.service.MergeService.star ...