使用Bootstrap的popover标签中嵌入插件,并且为插件注册事件实现Ajax与后台交互
2024-08-31 02:41:31
下午研究了一下bootstrap的popover写了个例子。如果项目很多地方都需要用到可以考虑封装成插件。
javascript代码:
<script type="text/javascript">
var _types = '0';
var _status = '0'; $(function () {
LoadFilter();
}); function search() {
$.ajax({
....
});
} function LoadFilter() {
var _content = '';
_content += '<div class="menu-item" _t="types"><span class="title">类型</span>'
_content += '<div class="btn-group">'
_content += '<button id="types_0" _v="0" type="button" class="btn btn-default btn-xs">全部</button>'
_content += '<button id="types_1" _v="1" type="button" class="btn btn-default btn-xs">收入</button>'
_content += '<button id="types_2" _v="2" type="button" class="btn btn-default btn-xs">支出</button>'
_content += '</div>'
_content += '</div>'
_content += '<div class="menu-item" _t="status"><span class="title">状态</span>'
_content += '<div class="btn-group">'
_content += '<button id="status_0" _v="0" type="button" class="btn btn-default btn-xs">全部</button>'
_content += '<button id="status_1" _v="1" type="button" class="btn btn-default btn-xs">编辑中</button>'
_content += '<button id="status_2" _v="2" type="button" class="btn btn-default btn-xs">编辑完成</button>'
_content += '<button id="status_3" _v="3" type="button" class="btn btn-default btn-xs">复核完成</button>'
_content += '</div>'
_content += '</div>' $('#btnFilter').popover({
placement: 'bottom',
trigger: 'manual',
html: true,
content: _content
}).on('click', function () {
var _this = this;
$(this).popover('show');
$(this).on('shown.bs.popover', function () {
$(document).bind("click", function (e) {
var target = $(e.target);
if (target.closest(".popover").length == 0) {
$(_this).popover('hide');
}
}); $("div[_t='types']").find("button[_v='" + _types + "']").addClass('active');
$("div[_t='status']").find("button[_v='" + _status + "']").addClass('active'); $("div[_t='types']").find('button').unbind('click');
$("div[_t='types']").find('button').bind('click', function () {
$("div[_t='types']").find('button').removeClass('active');
$(this).addClass('active');
_types = $(this).attr("_v");
search();
}); $("div[_t='status']").find('button').unbind('click');
$("div[_t='status']").find('button').bind('click', function () {
$("div[_t='status']").find('button').removeClass('active');
$(this).addClass('active');
_status = $(this).attr("_v");
search();
});
});
$(this).on('hidden.bs.popover', function () {
$(document).unbind();
});
});
}
</script>
最新文章
- 监控服务 - Nagios配置文件详解
- 彻底弄明白之数据结构中的排序七大算法-java实现
- ExtJS入门教程03,form中怎能没有validation
- .Net AppDomain.CurrentDomain.AppendPrivatePath(@";Libs";);
- python 装饰器和 functools 模块
- 为Angular-UEditor增加工具栏属性
- 【POJ3580】【块状链表】SuperMemo
- [c#]asp.net开发微信公众平台(8)微信9大高级接口,自定义菜单
- Android 打造自己的个性化应用(三):应用程序的插件化
- 文顶顶 iOS开发UI篇—UITabBarController简单介绍 iOS开发UI篇—UITabBarController简单介绍
- spring4.2完整web项目(使用html视图解析器)
- 教我徒弟Android开发入门(三)
- sublime高亮代码导出
- unittest 框架-待优化
- jdk1.8安装
- JavaWeb中使用JSON
- dos5章
- .gitignore语法
- centos 7设置本地yum资源库
- gcc 6.2.0/6.3.0/8.2.0 编译安装
热门文章
- AttributeError: &#39;Model&#39; object has no attribute &#39;name&#39;
- [BUAA软工]Alpha阶段测试报告
- js待学习
- Linux平台Boost 1.6.7的编译方法
- 【深入学习linux】CentOS 7 最小化安装后的注意事项及一些必备组件的安装
- Base64编码解码(js)
- Hash算法及java HashMap底层实现原理理解(含jdk 1.7以及jdk 1.8)
- h5 唤起app或跳转appStore
- fgets注意事项
- Django入门2开发工具pycharm的配置