指令-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 ...
随机推荐
- Ajax前后台交互函数
function AJAX(obj){ //做网络请求的时候参数以对象的形式传递进来 //我们规定obj里面包含属性:url, //请求方式type, //date前端给后端传递的参数 //回调函数s ...
- Vue01 Vue介绍、Vue使用、Vue实例的创建、数据绑定、Vue实例的生命周期、差值与表达式、指令与事件、语法糖
1 Vue介绍 1.1 官方介绍 vue是一个简单小巧的渐进式的技术栈,它提供了Web开发中常用的高级功能:视图和数据的解耦.组件的服用.路由.状态管理.虚拟DOM 说明:简单小巧 -> 压缩后 ...
- 从零一起学Spring Boot之LayIM项目长成记(四) Spring Boot JPA 深入了解
前言 本篇内容主要是一些关于JPA的常用的一些用法等.内容也是很多是看其他博客学来的,顺道在本系列博客里抽出一篇作为总结.下面让我们来看看吧. 不过我更推荐大家读本篇:https://lufficc. ...
- Spring Boot Actutaur + Telegraf + InFluxDB + Grafana 构建监控平台
完成一套精准,漂亮图形化监控系统从这里开始第一步 Telegraf是收集和报告指标和数据的代理 它是TICK堆栈的一部分,是一个用于收集和报告指标的插件驱动的服务器代理.Telegraf拥有插件或集成 ...
- 【BZOJ2049】洞穴勘测(Link-Cut Tree)
[BZOJ2049]洞穴勘测(Link-Cut Tree) 题面 题目描述 辉辉热衷于洞穴勘测. 某天,他按照地图来到了一片被标记为JSZX的洞穴群地区.经过初步勘测,辉辉发现这片区域由n个洞穴(分别 ...
- 【洛谷1640】[SCOI2010]连续攻击游戏
题目描述 lxhgww最近迷上了一款游戏,在游戏里,他拥有很多的装备,每种装备都有2个属性,这些属性的值用[1,10000]之间的数表示.当他使用某种装备时,他只能使用该装备的某一个属性.并且每种装备 ...
- [HDU5765]Bonds
题面 题意 给出一张\(n\)点\(m\)边无向连通图,求每条边出现在多少个割集中. \(n\le20,m\le\frac{n(n-1)}{2}\) sol 所谓割集,就是指把\(n\)个点分成两个集 ...
- java 动态代理 , 多看看。 多用用。
import java.lang.reflect.InvocationHandler; import java.lang.reflect.Proxy; import java.lang.reflect ...
- springboot 整合 MongoDB 实现登录注册,html 页面获取后台参数的方法
springboot简介: Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不 ...
- centos6.8安装cdh5.10.0(离线版)
Centos6.8安装CDH5 相关包的下载地址: Cloudera Manager地址:http://archive.cloudera.com/cm5/cm/5/ CDH安装包地址:http://a ...