Bootstrap被封装的弹层


Posted in Javascript onJuly 20, 2016

对于Bootstrap的弹层,插件有很多,今天主要用的是它自带的功能,通过bootstrap提供的模式窗口来实现的,而小编主要对使用方法进行了封装,开发人员可以自己动态传入弹层的HTML内容,可以控制按钮的显示与隐藏,用户通过MVC扩展方法对弹层进行生成,然后使用A标签进行调用.

具体使用很简单

@Html.GenerateDialog("测试",true, 
@<div>
<form action="/home/index">hello world!</form>
</div>)
<a data-toggle='modal' data-target='#LindModal'>测试弹层</a>

上面代码分为两块,第一块MVC扩展方法,主要用于在页面上输出弹层的代码段,第二段是A标签的调用,主要用于绑定上面的弹层控件.

下面主要看一下弹层的扩展方法,它使用了Func<string, HelperResult>这个委托,用来接收前台的HTML代码段,这对于开发人员是个福音,你不用关心如何去拼接HTML代码了,而是直接把前台给我们的代码复制过来即可.

弹层方法

#region Bootstrap弹层
/// <summary>
/// bootstrap风格的弹层
/// </summary>
/// <param name="htmlHelper"></param>
/// <param name="isBtn"></param>
/// <param name="result"></param>
/// <returns></returns>
public static MvcHtmlString GenerateDialog(this HtmlHelper htmlHelper, bool isBtn, Func<string, HelperResult> result)
{
return GenerateDialog(htmlHelper, "详细", isBtn, result);
}
/// <summary>
/// bootstrap风格的弹层
/// </summary>
/// <param name="htmlHelper"></param>
/// <param name="title"></param>
/// <param name="isBtn"></param>
/// <param name="result"></param>
/// <returns></returns>
public static MvcHtmlString GenerateDialog(this HtmlHelper htmlHelper, string title, bool isBtn, Func<string, HelperResult> result)
{
string templete = @"<div class='modal fade' id='LindModal' tabindex='-1' role='dialog' aria-labelledby='myModalLabel' aria-hidden='true'>
<div class='modal-dialog'>
<div class='modal-content'>
<div class='modal-header'>
<button type='button' class='close'
data-dismiss='modal' aria-hidden='true'>
×
</button>
<h4 class='modal-title' id='myModalLabel'>"+title+
@"</h4>
</div>
<div class='modal-body' id='dialogContent'>
" + result.Invoke(null) + "</div>";
if (isBtn)
{
templete +=
@"<div class='modal-footer'>
<button type='button' class='btn btn-warning'
data-dismiss='modal'>
关闭
</button>
<button type='button' class='btn btn-primary' id='subBtn'>
提交
</button>
</div>";
}
templete +=
@"</div>
</div>
</div>
<script>
$('#subBtn').click(function(){$('#dialogContent form').submit();});
</script>";
return MvcHtmlString.Create(templete);
}
#endregion

而运行的效果是我们可以想到的

Bootstrap被封装的弹层

以上所述是小编给大家介绍的Bootstrap被封装的弹层,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
模仿JQuery.extend函数扩展自己对象的js代码
Dec 09 Javascript
首页图片漂浮效果示例代码
Jun 05 Javascript
浅谈类似于(function(){}).call()的js语句
Mar 30 Javascript
动态创建按钮的JavaScript代码
Jan 29 Javascript
JavaScript学习总结之JS、AJAX应用
Jan 29 Javascript
jquery动态添加带有样式的HTML标签元素方法
Feb 24 jQuery
js动态引入的四种方法
May 05 Javascript
重新认识vue之事件阻止冒泡的实现
Aug 02 Javascript
angularJS实现不同视图同步刷新详解
Oct 09 Javascript
javascript删除数组元素的七个方法示例
Sep 09 Javascript
JS实现数据动态渲染的竖向步骤条
Jun 24 Javascript
微信小程序实现自定义动画弹框/提示框的方法实例
Nov 06 Javascript
必备的JS调试技巧汇总
Jul 20 #Javascript
JavaScript的==运算详解
Jul 20 #Javascript
javascript特效实现——当前时间和倒计时效果的简单实例
Jul 20 #Javascript
javascript中数组和字符串的方法对比
Jul 20 #Javascript
js简单实现图片延迟加载的方法
Jul 19 #Javascript
JS实现输入框提示文字点击时消失效果
Jul 19 #Javascript
JavaScript新增样式规则(推荐)
Jul 19 #Javascript
You might like
php中定义网站根目录的常用方法
2010/08/08 PHP
php计算给定日期所在周的开始日期和结束日期示例
2017/02/06 PHP
Smarty模板配置实例简析
2019/07/20 PHP
PHP与Web页面的交互示例详解二
2020/08/04 PHP
载入进度条 效果
2006/07/08 Javascript
jquery 常用操作方法
2010/01/28 Javascript
javascript hasFocus使用实例
2010/06/29 Javascript
window.ActiveXObject使用说明
2010/11/08 Javascript
简单实用的js调试logger组件实现代码
2010/11/20 Javascript
js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差别介绍
2012/05/16 Javascript
javascript 处理null及null值示例
2014/06/09 Javascript
详解javascript实现自定义事件
2016/01/19 Javascript
javascript实现可键盘控制的抽奖系统
2016/03/10 Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
2016/06/24 Javascript
AngularJS ng-bind-html 指令详解及实例代码
2016/07/30 Javascript
微信小程序 在Chrome浏览器上运行以及WebStorm的使用
2016/09/27 Javascript
浅谈jquery中next与siblings的区别
2016/10/27 Javascript
原生js实现倒计时功能(多种格式调用)
2017/01/12 Javascript
Bootstrap下拉菜单样式
2017/02/07 Javascript
67 个节约开发时间的前端开发者的工具、库和资源
2017/09/12 Javascript
浅谈Vuejs中nextTick()异步更新队列源码解析
2017/12/31 Javascript
使用Vue组件实现一个简单弹窗效果
2018/04/23 Javascript
详解如何在vue-cli中使用vuex
2018/08/07 Javascript
angularjs性能优化的方法
2018/09/05 Javascript
jQuery实现的移动端图片缩放功能组件示例
2020/05/01 jQuery
[31:01]2014 DOTA2国际邀请赛中国区预选赛5.21 CNB VS Orenda
2014/05/23 DOTA
Python实现比较扑克牌大小程序代码示例
2017/12/06 Python
python实现停车管理系统
2018/11/30 Python
详解Python数据分析--Pandas知识点
2019/03/23 Python
《画杨桃》教学反思
2014/04/13 职场文书
司法所长先进事迹
2014/06/02 职场文书
创建绿色学校先进个人材料
2014/08/20 职场文书
领导班子四风对照检查材料范文
2014/09/27 职场文书
深度好文:50条没人告诉你的人生经验,句句精辟
2019/08/22 职场文书
详细聊聊MySQL中慢SQL优化的方向
2021/08/30 MySQL
CentOS7 minimal 最小化安装网络设置过程
2022/12/24 Servers