指令-arModal-点击提示框模板
html 使用<ar-modal></ar-modal>:
<ar-modal
modal-obj="modalObj"
ok="newAlarmClear($index)"
confirm-msg="{{'确定删除选定的告警任务?此操作无法撤销!'|translate}}"
ar-title = "{{'提示'|translate}}"
>
<button
class="btn btn-danger ng-scope"
aria-label="Clear"
data-test-subj="clearButton">
<span class="sr-only ng-scope" translate="">Clear</span>
<i aria-hidden="true" class="fa fa-trash-o"></i>
</button>
</ar-modal>
属性说明:1,2选一,默认取2的值
1.js文件传值()
modal-obj="modalObj" //js文件提供的对象 对象规范:
$scope.modalObj = {
'title': '提示',//提示头部
'msg': 'xxx',//提示语
'ok':function(){}//确定按钮执行的函数
}
2.html 属性传值
ok="newAlarmClear($index)"//确定按钮执行的函数
confirm-msg="{{'确定删除选定的告警任务?此操作无法撤销!'|translate}}"//提示语
ar-title = "{{'提示'|translate}}"//提示头部
//luo.chunxiang
//2017/3/22
import html from 'ui/directives/modal/ar_modal.html';
import uiModules from 'ui/modules';
import 'ui/directives/modal/style.css';
import 'ui/ar_safe_modal'; uiModules
.get('kibana')
.directive('arModal', function ($modal, $translate, $translatePartialLoader, safeModal) {
return {
restrict: 'E',
scope: {
modalObj: '=',
ok: '&'
},
controller: function ($scope) {
$translatePartialLoader.addPart('../plugins/kibana');
$translate.refresh();
},
link: function (scope, element, attrs) {
scope.ok = attrs.ok ? scope.ok : null;
scope.msg = attrs.confirmMsg ? attrs.confirmMsg : null;
scope.title = attrs.arTitle ? attrs.arTitle : null;
element.bind('click', function () {
//ConfirmService.open(attrs.confirm);
var modalConfirmInstance = $modal.open({
template: html,
controller:['$scope', '$modalInstance', function ($scope, $modalConfirmInstance) {
//get obj from parent Controller
$scope.modalObj = scope.modalObj || {};
$scope.title = scope.title || $scope.modalObj.title || safeModal && safeModal.title;//头部
$scope.msg = scope.msg || $scope.modalObj.msg || safeModal && safeModal.msg;//body信息
$scope.ok = scope.ok || $scope.modalObj.ok || safeModal && safeModal.ok; //$scope 是此控制器作用域对象 ,而 scope是继承了父作用域对象从而创建一个新的作用于对象,可以访问父类中的方法和属性
$scope.confirm = function () {
$scope.ok(); //run the parent controller method
$modalConfirmInstance.close(true);
};
$scope.cancel = function () {
$modalConfirmInstance.dismiss('cancel');
};
}],
windowClass: 'confirmModal', // 自定义modal上级div的class
size: 'sm'//大小配置
});
return modalConfirmInstance;
}); }
};
});
'ui/directives/modal/style.css';
.confirmModal .modal-body {
height: 124px;
}
.confirmModal .modal-body .hint-contents{
width: 100%;
height: 90px;
padding: 0px 20px;
word-wrap:break-word;
}
.confirmModal .modal-body .hint-area{
display: block;
width: 80%;
height: 100%;
float: right;
}
.confirmModal .modal-body .hint-icon{
display: block;
width: 20%;
height: 100%;
float: left;
color: #da0000;
}
.confirmModal .modal-body .hint-icon a{
display: inline-block;
width: 32px;
height: 32px;
background-image: url("~ui/images/hint.svg");
}
ui/directives/modal/ar_modal.html
<div class="modal-header">
<p class="modal-title" translate>{{title}}</p>
<button type="button" class="close" aria-label="Close" ng-click="cancel()">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<div class="hint-contents">
<!-- <span class="hint-icon"><i class="fa fa-exclamation-circle fa-2x" aria-hidden="true"></i></span> -->
<div class="hint-icon"><a></a></div>
<div class="hint-area">
<div class="hint-msg"><span translate>{{msg}}</span></div>
<div class="hint-check" ng-if="check">
<input class="hint-checkbox" type="checkbox" ng-model="formData" ng-click="updateSelection($event,formData)"/>
<span> <span translate>应用于本次导入的所有对象</span></span>
</div> </div>
</div>
</div>
<div class="modal-footer">
<div class="hint-button">
<button type="button" ng-click="confirm()" class="btn btn-default button-ok"><span translate>确定</span>
</button>
<button type="button" ng-click="cancel()" class="btn btn-primary button-cel"><span
translate>取消</span></button>
</div>
</div>
ui/ar_safe_modal
//luo.chunxiang
//2017.3.23
import uiModules from 'ui/modules';
import SafeModal from 'ui/ar_safe_modal/safeModal';
import $ from 'jquery';
import html from 'ui/directives/modal/ar_modal.html';
import 'ui/directives/modal/style.css';
//let rootSafeModal = new SafeModal();
uiModules.get('kibana')
.factory('safeModal', function () {
return SafeModal; })
.factory('arSafeModalYes', function ($window, $timeout, $q,safeModal) {
return function arSafeModalYes(message) {
return $timeout(function () {
//return safeModal.flag || $q.reject(false);
return true;
});
};
})
.factory('arSafeModalNo', function ($window, $timeout, $q,safeModal) {
return function arSafeModalNo(message) {
return $timeout(function () {
//return safeModal.flag || $q.reject(false);
return $q.reject(false);
});
};
}) .factory('arSafeModal', function ($window, $timeout, $q,safeModal) { return function arSafeModa(ok,msg,check,title) {
$timeout(function () {
var $v = $('#safeMe');
safeModal.ok = ok;
if (msg) {
safeModal.msg = msg;
}
if (check !== undefined || check !== null) {
safeModal.check = check;
}
if (title) {
safeModal.title = title;
}
$v.click();
});
};
})
.service('arSafeModalMult', function ($window, $timeout, $q,safeModal) {
let flag = 0;
let show = true;
let arSafeModalMult = function (ok,msg,check,cel,title) { var $v = $('#safeMeMult');
safeModal.ok = ok;
safeModal.cel = cel;
if (msg) {
safeModal.msg = msg;
}
if (check !== undefined || check !== null) {
safeModal.check = check;
}
if (title) {
safeModal.title = title;
}
$v.click(); };
return arSafeModalMult; })
;
指令-arModal-点击提示框模板的更多相关文章
- Unity调用Window提示框Yes/No(英文提示窗)
Unity调用Windows弹提示框 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...
- Unity调用Windows弹框、提示框(确认与否,中文)
Unity调用Windows弹提示框 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...
- 解决input中智能提示框onblur与onclick冲突的问题
背景: 制作一个类似百度输入法的智能提示框, 其中当关键词输入进来时,会有智能提示展开,实际需求是当点击智能提示框的汉字时,输入框中自动补全并关闭智能提示, 当点击其他区域时,智能提示框自动隐藏,如下 ...
- iOS:提示框(警告框)控件UIAlertView的详解
提示框(警告框)控件:UIAlertView 功能:当点击按钮或标签等时,弹出一个提示框,显示必要的提示,然后通过添加的按钮完成需要的功能. 类型:typedef NS_ENUM(NSInte ...
- C#-WinForm-弹窗提示框-如何知道用户点击的是哪个按钮?
MessageBox.Show() 有21个重载 常用的弹窗提示框 1.一个参数,弹窗只有一个选项 2.三个参数,第一个参数是设置弹窗消息框中的文字内容:第二个参数是设置弹窗标题栏中显示的文本:第三个 ...
- form WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法
针对WebBrowser控件中自动点击弹出框及禁用脚本提示问题得到如下几种实际情况的解决办法,绝对管用. 1.屏蔽弹出错误脚本 将WebBrowser控件ScriptErrorsSuppressed设 ...
- 经验总结:WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法
经验总结:WebBrowser自动点击弹出提示框alert.弹出对话框confirm.屏蔽弹出框.屏蔽弹出脚本错误的解决办法 网上有好多解决方法,可是不一定好使,本人经过多次试验,针对WebBrows ...
- 点击HTML页面问号出现提示框
本demo的功能:点击页面按钮在其边缘出现提示信息,点击页面任何一处则消失. 如下图: 1.所需插件: jquery插件: layer插件: 2.HTML内容: ==注意==: class=" ...
- Android基础TOP4_1:点击物理按钮弹出退出提示框
JAVA: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedIns ...
随机推荐
- R语言实现二分查找法
二分查找时间复杂度O(h)=O(log2n),具备非常高的效率,用R处理数据时有时候需要用到二分查找法以便快速定位 Rbisect <- function(lst, value){ low=1 ...
- jxl导入/导出excel(网上的案例)
jxl导入/导出excel 1.jxl导入/导出excel案例,黏贴即可运行 package junit.test; import java.io.File; import java.io.IOExc ...
- 深度学习框架: Keras官方中文版文档正式发布
今年 1 月 12 日,Keras 作者 François Chollet 在推特上表示因为中文读者的广泛关注,他已经在 GitHub 上展开了一个 Keras 中文文档项目.而昨日,Françoi ...
- 关于flex的布局理解
flex布局是一种新的布局方式也就是弹性盒子:在布局上更加方便,但是要注意的是在flex布局中float.position是无效的. 图片来自阮一峰的博客 .下面我们进入正题: flex布局分为分为主 ...
- 原根求解算法 && NTT算法
原根求解算法: 获取一个数\(N\)的原根\(root\)的算法 #include<bits/stdc++.h> #define ll long long #define IL inlin ...
- 【USACO4.2】草地排水Drainage Ditches(最大流)
题目背景 在农夫约翰的农场上,每逢下雨,贝茜最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间.因此,农夫约翰修建了一套排水系统来使贝茜的草地免除被大水淹没 ...
- 一个10年Java程序员的年终总结,献给还在迷茫中的你
我越来越担心我作为一个Java程序员的未来. 恍然间,发现自己在这个行业里已经摸爬滚打将近10年了,原以为自己就凭已有的项目经验和工作经历怎么着也应该算得上是一个业内比较资历的人士了,但是今年在换工作 ...
- Mysql遇到 is marked as crashed and should be repaired 问题解决方法
遇到 找到mysql的安装目录的bin/myisamchk工具,在命令行中输入: myisamchk -c -r /var/lib/mysql/ambari/alert_current.MYI 问题解 ...
- PowerShell 发布farm solution
SharePoint PowerShell在SharePoint Product列表里边,然后以管理员权限启动. 1. 添加Solution 到 SharePoint Farm. Add-SPSolu ...
- Spring Boot Actutaur + Telegraf + InFluxDB + Grafana 构建监控平台之应用数据分析
本节将引入完美的granafa仪表板,在上节的基础上,并提出自己的一些监控数据的总结和看法 你可以有一个类似于这个的Dashboard,会引入监控Zimbra协作 本节环境采用的是centos7系统, ...