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 相关文章推荐
从JavaScript 到 JQuery (1)学习小结
Feb 12 Javascript
用 Javascript 验证表单(form)中的单选(radio)值
Sep 08 Javascript
基于jQuery的history历史记录插件
Dec 11 Javascript
js判断屏幕分辨率的代码
Jul 16 Javascript
javascript面向对象之this关键词用法分析
Jan 13 Javascript
浅析JavaScript中的事件机制
Jun 04 Javascript
使用JQuery在线制作ppt并在线演示源码特效
Sep 08 Javascript
基于jQuery实现点击最后一行实现行自增效果的表格
Jan 12 Javascript
vue组件发布到npm简单步骤
Nov 30 Javascript
Vue实现星级评价效果实例详解
Dec 30 Javascript
小程序外卖订单界面的示例代码
Dec 30 Javascript
JavaScript中关于预编译、作用域链和闭包的理解
Mar 31 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 数组教程 定义数组
2009/10/23 PHP
PHP stristr() 函数(不区分大小写的字符串查找)
2010/06/03 PHP
PHP中func_get_args(),func_get_arg(),func_num_args()的区别
2013/09/30 PHP
php跨域cookie共享使用方法
2014/02/20 PHP
PHP中绘制图像的一些函数总结
2014/11/19 PHP
JQuery中使用Ajax赋值给全局变量异常的解决方法
2014/01/10 Javascript
jQuery 追加元素的方法如append、prepend、before
2014/01/16 Javascript
php读取sqlite数据库入门实例代码
2014/06/25 Javascript
jquery实现勾选复选框触发事件给input赋值
2015/02/01 Javascript
jquery读写cookie操作实例分析
2015/12/24 Javascript
jquery实现右侧栏菜单选择操作
2016/03/04 Javascript
利用Webpack实现小程序多项目管理的方法
2019/02/25 Javascript
浅谈Vue CLI 3结合Lerna进行UI框架设计
2019/04/14 Javascript
JavaScript使用setTimeout实现倒计时效果
2021/02/19 Javascript
[46:09]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS VG第三场
2014/05/26 DOTA
Python中的匿名函数使用简介
2015/04/27 Python
python文件写入write()的操作
2019/05/14 Python
解决Django migrate不能发现app.models的表问题
2019/08/31 Python
Windows平台Python编程必会模块之pywin32介绍
2019/10/01 Python
pycharm运行程序时看不到任何结果显示的解决
2020/02/21 Python
pycharm 使用tab跳出正在编辑的括号(){}{}等问题
2021/02/26 Python
切尔西足球俱乐部官方网上商店:Chelsea FC
2019/06/17 全球购物
巴西箱包、背包、钱包和旅行配件购物网站:Inovathi
2019/12/14 全球购物
星空联盟C# .net笔试题
2014/12/05 面试题
护理学专业求职信
2014/06/29 职场文书
优秀毕业生的求职信
2014/07/21 职场文书
殡葬服务心得体会
2014/09/11 职场文书
道路交通事故赔偿协议书
2014/10/24 职场文书
个人事迹材料怎么写
2014/12/30 职场文书
语文教师求职信范文
2015/03/20 职场文书
出生证明范本
2015/06/15 职场文书
公司劳动纪律管理制度
2015/08/04 职场文书
团结主题班会
2015/08/13 职场文书
2019广播稿怎么写
2019/04/17 职场文书
面试被问select......for update会锁表还是锁行
2021/11/11 MySQL
hive数据仓库新增字段方法
2022/06/25 数据库