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 相关文章推荐
Firefox 无法获取cssRules 的解决办法
Oct 11 Javascript
关于锚点跳转及jQuery下相关操作与插件
Oct 01 Javascript
javascript向flash swf文件传递参数值注意细节
Dec 11 Javascript
JavaScript如何从listbox里同时删除多个项目
Oct 12 Javascript
jQuery实现商品活动倒计时
Oct 16 Javascript
JavaScript函数的调用以及参数传递
Oct 21 Javascript
浅谈javascript中执行环境(作用域)与作用域链
Dec 08 Javascript
Vue.js 插件开发详解
Mar 29 Javascript
JS实现匀加速与匀减速运动的方法示例
Sep 04 Javascript
vue.js实现点击后动态添加class及删除同级class的实现代码
Apr 04 Javascript
Node.js原生api搭建web服务器的方法步骤
Feb 15 Javascript
js实现内置计时器
Dec 16 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 代码优化之经典示例
2011/03/24 PHP
rrmdir php中递归删除目录及目录下的文件
2011/05/15 PHP
php小技巧 把数组的键和值交换形成了新的数组,查找值取得键
2011/06/02 PHP
PHP按行读取文件时删除换行符的3种方法
2014/05/04 PHP
ThinkPHP验证码和分页实例教程
2014/08/22 PHP
php生成随机颜色的方法
2014/11/13 PHP
php注册和登录界面的实现案例(推荐)
2016/10/24 PHP
详解php伪造Referer请求反盗链资源
2019/01/24 PHP
基于Jquery实现表格动态分页实现代码
2011/06/21 Javascript
JS幻灯片可循环播放可平滑旋转带滚动导航(自写)
2013/08/05 Javascript
js网页实时倒计时精确到秒级
2014/02/10 Javascript
使用JavaScript开发IE浏览器本地插件实例
2015/02/18 Javascript
javascript如何创建对象
2016/08/29 Javascript
浅谈Javascript中的Label语句
2016/12/14 Javascript
bootstrap table表格插件使用详解
2017/05/08 Javascript
js实现简单数字变动效果
2017/11/06 Javascript
超详细动手搭建一个VuePress 站点及开启PWA与自动部署的方法
2019/01/27 Javascript
ES6知识点整理之数组解构和字符串解构的应用示例
2019/04/17 Javascript
微信小程序使用canvas自适应屏幕画海报并保存图片功能
2019/07/25 Javascript
小程序怎样让wx.navigateBack更好用的方法实现
2019/11/01 Javascript
Android基于TCP和URL协议的网络编程示例【附demo源码下载】
2018/01/23 Python
python基于http下载视频或音频
2018/06/20 Python
Windows 8.1 64bit下搭建 Scrapy 0.22 环境
2018/11/18 Python
Python开发之Nginx+uWSGI+virtualenv多项目部署教程
2019/05/13 Python
获取django框架orm query执行的sql语句实现方法分析
2019/06/20 Python
浅谈Django中view对数据库的调用方法
2019/07/18 Python
python将时分秒转换成秒的实例
2019/12/07 Python
基于matplotlib中ion()和ioff()的使用详解
2020/06/16 Python
css3中新增的样式使用示例附效果图
2014/08/19 HTML / CSS
全球500多个机场的接送服务:Suntransfers
2019/06/03 全球购物
PHP面试题大全
2015/10/16 面试题
土木工程毕业生推荐信
2013/10/28 职场文书
试用期解除劳动合同通知书
2015/04/16 职场文书
Windows10下安装MySQL8
2021/04/06 MySQL
pytorch 如何使用amp进行混合精度训练
2021/05/24 Python
Python实战实现爬取天气数据并完成可视化分析详解
2022/06/16 Python