公司用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的更多相关文章

  1. 内部技术分享的 PPT

    本文的基础是搞了一次内部的技术分享,在此也分享一下本次的PPT的一些内容.先列一下大概内容吧. EF-Code First API(WCF.WebAPI) Xaml MVVM AOP Xamarin. ...

  2. [AngularJS] angular-md-table for Angular material design

    Download from npm:https://www.npmjs.com/package/angular-md-table +: Responsive: Has both Mobile view ...

  3. angularJS学习资源最全汇总

    基础 官方: http://docs.angularjs.org angularjs官方网站已被墙,可看 http://www.ngnice.com/: 官方zip下载包 https://github ...

  4. 使用 AngularJS 和 Electron 构建桌面应用

    GitHub 的 Electron 框架(以前叫做 Atom Shell)允许你使用 HTML, CSS 和 JavaScript 编写跨平台的桌面应用.它是io.js 运行时的衍生,专注于桌面应用而 ...

  5. 20个免费的 AngularJS 资源和开发教程

    曾经,jQuery 无疑是最受欢迎的开源的 JavaScript 库,如今它有了很多的竞争对手,像 AngularJS.React.KnockoutJS 等等.在这里,我想重点关注一下 Angular ...

  6. angularjs 延迟更新和angularjsUI

    angularjsUI库https://material.angularjs.org/latest/ ng-model-options="{ updateOn: 'blur' }" ...

  7. 拟物设计和Angular的实现 - Material Design(持续更新)

    Material Design是Google最新发布的跨平台统一视觉设计语言.直接翻译是物质设计,但是我更倾向于使用"拟物设计"更为准确. 据谷歌介绍,Material Desig ...

  8. 深入探索AngularJS(持续更新)

    数据双向绑定并不是Angular最出彩的地方.大部分对AngularJs的介绍都偏重于使用,使用的学习只是学了AngularJs的API,而那只能AngularJs的很小一部分.随着使用越来越深,系统 ...

  9. 通过Anuglar Material串串学客户端开发 - javascript编译和gulpfile.js

    Angular Material不仅仅有本身框架的源代码,还有在这个框架上实现的一个应用docs.更为强大的是,这个应用是真正的产品网站:就是它的官网.我有理由相信,这个网站是从源代码直接发布的,从网 ...

随机推荐

  1. activeMQ的安装

    1.下载ActiveMQ 去官方网站下载:http://activemq.apache.org/ 2.运行ActiveMQ 解压缩apache-activemq-5.5.1-bin.zip, 修改配置 ...

  2. 初识 ActiveMQ

    其实算不上初识了,工作一年来一直都有接触 mq 相关的东西.但是,从来都是粘贴复制别人的配置代码,却从未认真系统的学习过它,现在线上用 mq 的项目出问题了,老板在后面拿枪指着呢,不得不好好研究下了. ...

  3. pod trunk push --verbose 失败的原因总结

    用 pod trunk push --verbose  添加一个 pod 的时候,经常出现如下的错误 [!] The podspec does not validate. /Library/Ruby/ ...

  4. 破解 Adobe 系列的最佳方法,手把手教

    此方法是个人认为最方便的而且最安全的方法(可以避免下载到可能捆绑病毒的破解版本) 1.首先到Adobe的官网上下载 Creative Cloud: 打开官网上creative cloud 的下载页面: ...

  5. Java 并发 – 线程安全?

    线程安全的定义常常让人迷惑,搜索引擎会发现无数定义,比如: 多个线程同时执行也能正确工作就是线程安全的代码 多个线程同时执行能以正确的方式操纵共享数据就是线程安全的代码. 而且还有很多类似的定义 你是 ...

  6. SQLServer 理解copyonly备份操作

    标签:MSSQL/日志截断 概述 Alwayson在添加数据库的过程中如果同步首选项选择的是“完整”,那么就会在主副本上执行copyonly的完整备份和日志备份在辅助副本上执行还原操作,也正是这个操作 ...

  7. CoreLocation 框架

    获取设备的地理位置和方向 一.概述 CoreLocation框架,它提供了如下几种服务 确定设备的地理位置 高度 方向 或到附近 iBeacon 的相对位置. 这个框架使用所有可用的车载硬件.如 Wi ...

  8. 在centos6.7中lnmp环境下安装swoole插件和pthreads插件

    1.首先在安装lnmp集成包之前,解压lnmp1.3-full.tar.gz,进入到lnmp1.3-full/include/目录下; 2.输入 vi php.sh;编辑php.sh文档.博主安的是p ...

  9. SSH的Eclips环境搭建

    一.创建数据库名字为:dungouoa create database dungouoa default character set utf8; mysql> show create datab ...

  10. 国内APM企业的现状

    19世纪美国西部掘金热大起,大家听闻有人挖到了金子一夜暴富,于是蜂拥而上,但是很多人失望而归,最后居然是卖铲子的人赚到了钱. APM在互联网+时代表示应用性能管理,就是掘金万亿互联网市场的“铲子”,主 ...