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实现文字由下到上循环滚动的实例代码
Aug 09 Javascript
javascript中负数算术右移、逻辑右移的奥秘探索
Oct 17 Javascript
js统计页面的来访次数实现代码
May 09 Javascript
node.js学习总结之调式代码的方法
Jun 25 Javascript
Yarn的安装与使用详细介绍
Oct 25 Javascript
Javascript使用SWFUpload进行多文件上传
Nov 16 Javascript
vue 属性拦截实现双向绑定的实例代码
Oct 24 Javascript
浅谈vue中关于checkbox数据绑定v-model指令的个人理解
Nov 14 Javascript
原生js实现文件上传、下载、封装等实例方法
Jan 05 Javascript
js实现鼠标拖拽div左右滑动
Jan 15 Javascript
Vue项目vscode 安装eslint插件的方法(代码自动修复)
Apr 15 Javascript
html5中sharedWorker实现多页面通信的示例代码
May 07 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
论坛头像随机变换代码
2006/10/09 PHP
PHP中Session的概念
2006/10/09 PHP
基于PHP字符串的比较函数strcmp()与strcasecmp()的使用详解
2013/05/15 PHP
使用PHP函数scandir排除特定目录
2014/06/12 PHP
基于thinkPHP实现的微信自定义分享功能示例
2016/09/23 PHP
laravel框架实现去掉URL中index.php的方法
2019/10/12 PHP
解决FLASH需要点击激活的代码
2006/12/20 Javascript
JavaScript 变量命名规则
2009/09/23 Javascript
Js setInterval与setTimeout(定时执行与循环执行)的代码(可以传入参数)
2010/06/11 Javascript
子窗口、父窗口和Silverlight之间的相互调用
2010/08/16 Javascript
关于textarea提交的内容无法换行的解决办法
2013/04/09 Javascript
Javascript:为input设置readOnly属性(示例讲解)
2013/12/25 Javascript
js获取 type=radio 值的方法
2014/05/09 Javascript
js选择并转移导航菜单示例代码
2014/08/19 Javascript
JQuery操作元素的css样式
2015/03/09 Javascript
javascript字符串与数组转换汇总
2015/05/26 Javascript
深入浅析AngularJS和DataModel
2016/02/16 Javascript
jQuery实现页面评论栏中访客信息自动填写功能的方法
2016/05/23 Javascript
jQuery插件ContextMenu自定义图标
2017/03/15 Javascript
Vue 处理表单input单行文本框的实例代码
2019/05/09 Javascript
node实现简单的增删改查接口实例代码
2019/08/22 Javascript
js实现无限瀑布流实例方法
2019/09/16 Javascript
ElementUI之Message功能拓展详解
2019/10/18 Javascript
javascript canvas检测小球碰撞
2020/04/17 Javascript
用Python实现换行符转换的脚本的教程
2015/04/16 Python
Python实现ssh批量登录并执行命令
2016/10/25 Python
利用Python循环(包括while&amp;for)各种打印九九乘法表的实例
2017/11/06 Python
如何表示python中的相对路径
2020/07/08 Python
高中的职业生涯规划书
2013/12/28 职场文书
小学毕业演讲稿
2014/04/25 职场文书
教导主任竞聘演讲稿
2014/05/16 职场文书
学习型班组申报材料
2014/05/31 职场文书
个人先进事迹材料范文
2014/12/29 职场文书
介绍信格式样本
2015/05/05 职场文书
关于践行三严三实的心得体会
2016/01/05 职场文书
2019年世界儿童日宣传标语
2019/11/22 职场文书