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}}"//提示头部

ui\public\directives\ar_modal.js:
js:文件
//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">&times;</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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<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-点击提示框模板的更多相关文章

  1. Unity调用Window提示框Yes/No(英文提示窗)

    Unity调用Windows弹提示框 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...

  2. Unity调用Windows弹框、提示框(确认与否,中文)

    Unity调用Windows弹提示框 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...

  3. 解决input中智能提示框onblur与onclick冲突的问题

    背景: 制作一个类似百度输入法的智能提示框, 其中当关键词输入进来时,会有智能提示展开,实际需求是当点击智能提示框的汉字时,输入框中自动补全并关闭智能提示, 当点击其他区域时,智能提示框自动隐藏,如下 ...

  4. iOS:提示框(警告框)控件UIAlertView的详解

    提示框(警告框)控件:UIAlertView   功能:当点击按钮或标签等时,弹出一个提示框,显示必要的提示,然后通过添加的按钮完成需要的功能.   类型:typedef NS_ENUM(NSInte ...

  5. C#-WinForm-弹窗提示框-如何知道用户点击的是哪个按钮?

    MessageBox.Show() 有21个重载 常用的弹窗提示框 1.一个参数,弹窗只有一个选项 2.三个参数,第一个参数是设置弹窗消息框中的文字内容:第二个参数是设置弹窗标题栏中显示的文本:第三个 ...

  6. form WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法

    针对WebBrowser控件中自动点击弹出框及禁用脚本提示问题得到如下几种实际情况的解决办法,绝对管用. 1.屏蔽弹出错误脚本 将WebBrowser控件ScriptErrorsSuppressed设 ...

  7. 经验总结:WebBrowser自动点击弹出提示框alert、弹出对话框confirm、屏蔽弹出框、屏蔽弹出脚本错误的解决办法

    经验总结:WebBrowser自动点击弹出提示框alert.弹出对话框confirm.屏蔽弹出框.屏蔽弹出脚本错误的解决办法 网上有好多解决方法,可是不一定好使,本人经过多次试验,针对WebBrows ...

  8. 点击HTML页面问号出现提示框

    本demo的功能:点击页面按钮在其边缘出现提示信息,点击页面任何一处则消失. 如下图: 1.所需插件: jquery插件: layer插件: 2.HTML内容: ==注意==: class=" ...

  9. Android基础TOP4_1:点击物理按钮弹出退出提示框

    JAVA: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedIns ...

随机推荐

  1. xml的SAX解析规则

    一,为什么要用它 1.1,讲解 DOM解析原理:一次性把xml文档加载进内存,然后在内存中构建Document树. 对内存要求比较要. 缺点: 不适合读取大容量的xml文件,容易导致内存溢出. SAX ...

  2. Python Web-第三周-Networks and Sockets(Using Python to Access Web Data)

    1.Networked Programs 1.Internet 我们现在学习Internet部分,即平时我们浏览器做的事情,之后再学习客服端这部分 2.TCP 传输控制协议 3.Socket HTTP ...

  3. html点小图看大图最快捷的方法

    方法一: <td> <a href="{$vo.show_img}" target="_blank"><img style=&qu ...

  4. 描述Spring Web MVC的工作流程

    Spring Web MVC的共工作流程如下: 1.浏览器发出Spring mvc请求,请求给前端控制器 DispatcherServlet处理. 2.控制器通过HandlerMapping维护的请求 ...

  5. A Dream (PKUWC 2018)

    A Dream (PKUWC 2018) 这是一个梦. 从没有几分节日气氛的圣诞,做到了大雪纷飞的数九寒天. 忘了罢! 不记得时间,不记得地点.随着记忆的褪去,一切也只会不复存在. Day-34? D ...

  6. 【BZOJ2820】YY的GCD(莫比乌斯反演)

    [BZOJ2820]YY的GCD(莫比乌斯反演) 题面 讨厌权限题!!!提供洛谷题面 题解 单次询问\(O(n)\)是做过的一模一样的题目 但是现在很显然不行了, 于是继续推 \[ans=\sum_{ ...

  7. angular路由模块(二)

    上一章写的是如何创建一个简单的路由,这一样我们来看看如何创建一个路由模块.angular的思想就是(模块,组件,子组件.....). 我们在src/app目录下创建一个跟路由模块app-routing ...

  8. JWT 在前后端分离中的应用与实践

    关于前后端分离 前后端分离是一个很有趣的议题,它不仅仅是指前后端工程师之间的相互独立的合作分工方式,更是前后端之间开发模式与交互模式的模块化.解耦化.计算机世界的经验告诉我们,对于复杂的事物,模块化总 ...

  9. .net core 2使用ef core 2.0以db first方法创建实体类

    先安装以下三个包: Install-Package Microsoft.EntityFrameworkCore.SqlServer Install-Package Microsoft.EntityFr ...

  10. Java并发编程实战(chapter_1)(原子性、可见性)

    混混噩噩看了很多多线程的书籍,一直认为自己还不够资格去阅读这本书.有种要高登大堂的感觉,被各种网络上.朋友.同事一顿外加一顿的宣传与传颂,多多少少再自我内心中产生了一种敬畏感.2月28好开始看了之后, ...