全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

使用Bootstrap Tabs选项卡Ajax加载数据实现

本文实例为大家分享了Bootstrap Tabs选项卡Ajax加载数据的具体代码,供大家参考,具体内容如下

HTML代码(仅展示了部分关键性代码)

<li class="active">
 <a href="#home" data-toggle="tab" name="menu-ctrl"> 
 <span class="glyphicon glyphicon-home">&nbsp;</span> 主页 
 <span class="sr-only">(current)</span> 
 </a>
</li>
<li>
 <a href="#test-paper"> 
 <span class="glyphicon glyphicon-list-alt">&nbsp;</span> 试卷库
 </a>
</li>
<li>
 <a href="#favorite"> 
 <span class="glyphicon glyphicon-bookmark">&nbsp;</span> 我的收藏
 </a>
</li>
<li>
 <a href="#about">
 <span class="glyphicon glyphicon-info-sign">&nbsp;</span> 关于
 </a>
</li> <!--- /. Nav tabs--->


<div id="myTabContent" class="tab-content">
 <!-- 试卷库页面 -->
 <div class="tab-pane fade" id="test-paper"></div>
 <!-- 收藏页面 -->
 <div class="tab-pane fade" id="favorite"></div>
 <!-- 关于页面 -->
 <div class="tab-pane fade" id="about"></div>
 <!-- 用户信息页面 -->
 <div class="tab-pane fade" id="user-info-page"></div>
</div> <!--- /.tab-content ---->

实现思路:

1.使用JavaScript激活tab选项卡:

$("a[href=['#about']").click(function(e){
 $(this).tab('show');
 e.preventDefault(); //阻止a标签的默认行为
});

2.使用jQuery的load()方法异步加载 tab-pane容器中的内容;

$('#about').load('pages/about.jsp');

大功告成!

那么接下来对上面的思路进行简单的封装

JavaScript代码:

/**
 * 激活tab选项卡并使用ajax异步加载内容 
* @param {Object} tabsId
* @param {Object} url
 */
function showTabs(tabsId,url) {
 $("a[href='#"+tabsId+"']").tab('show');
 var $tabContent = $('#'+tabsId);
 if($tabContent.length < 100) {
 $tabContent.load(url);
 //console.info(tabsId + ' load done!');
 }
}

//依次为每个tab导航a标签添加单击事件
$('a[href="#test-paper"]').click(function(e) {
 showTabs('test-paper','pages/test-paper.jsp');
 e.preventDefault();
});

//$('a[href=..]')...
//..
//.. 这么长的代码!!

考虑到每个a标签的绑定的都是click事件,只是参数不同而已, 可以尝试着把tabs的数据用json数组存储起来;

//准备tabs数据
var tabsData = [{
 "id" : "test-paper",
 "url" : "pages/test-paper.jsp"
},{
 "id" : "favorite",
 "url" : "pages/favorite.jsp"
},{
 "id" : "about",
 "url" : "pages/about.jsp"
},{
 "id" : "user-info-page",
 "url" : "pages/user-info.jsp"
}];

//遍历json数组,循环添加a标签click事件:
$(tabsData).each(function(){
 //console.info(this.id + "--->" + this.url);
 $("a[href='#"+this.id+"']").click(function(e) {
 showTabs(this.id,this.url);
 e.preventDefault();
 });
});

终于完成? No!实测运行中没有任何效果;这法子貌似行不通啊!原因暂时还在研究中(..)

这时我想到了jQuery的bind()函数:

bind(type,[data],fn);

//fn: 绑定到每个匹配元素的事件上面的处理函数
//可以尝试把每个tab的参数通过data传递到外部的function中,用作每个a标签的click响应函数

改写后的$.each()循环:

$(tabsData).each(function(){
 //console.info(this.id + "--->" + this.url);
 $("a[href='#"+this.id+"']").bind('click',{
 id : this.id,
 url : this.url
 },tabsHandler);
});
function tabsHandler(event) {
 var data = event.data;
 showTabs(data.id,data.url);
 return false; //阻止默认a标签响应
}

这次总算是成功了!

看下演示图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Bootstrap  # Tabs  # 选项卡  # Ajax  # bootstrap选项卡扩展功能详解  # 简单实现bootstrap选项卡效果  # bootstrap选项卡使用方法解析  # bootstrap导航、选项卡实现代码  # Bootstrap选项卡动态切换效果  # BootStrap tab选项卡使用小结  # 精彩的Bootstrap案例分享 重点在注释!(选项卡、栅格布局)  # 很棒的Bootstrap选项卡切换效果  # 全面解析Bootstrap中tab(选项卡)的使用方法  # bootstrap实现tab选项卡切换  # 加载  # 绑定  # 都是  # 我想  # 还在  # 没有任何  # 遍历  # 大功告成  # 考虑到  # 大家分享  # 具体内容  # 单击  # 大家多多  # 依次为  # 展示了  # sr  # nbsp  # current  # test 


相关文章: 在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?  网站制作新手教程,新手建设一个网站需要注意些什么?  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  宝塔建站教程:一键部署配置流程与SEO优化实战指南  家具网站制作软件,家具厂怎么跑业务?  无锡营销型网站制作公司,无锡网选车牌流程?  小型网站制作HTML,*游戏网站怎么搭建?  如何正确下载安装西数主机建站助手?  焦点电影公司作品,电影焦点结局是什么?  如何在阿里云部署织梦网站?  如何选择最佳自助建站系统?快速指南解析优劣  如何用狗爹虚拟主机快速搭建网站?  如何快速搭建响应式可视化网站?  制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?  广东企业建站网站优化与SEO营销核心策略指南  C#如何在一个XML文件中查找并替换文本内容  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  深圳网站制作培训,深圳哪些招聘网站比较好?  子杰智能建站系统|零代码开发与AI生成SEO优化指南  广东专业制作网站有哪些,广东省能源集团有限公司官网?  北京建设网站制作公司,北京古代建筑博物馆预约官网?  高防服务器如何保障网站安全无虞?  一键网站制作软件,义乌购一件代发流程?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?  建站之星官网登录失败?如何快速解决?  攀枝花网站建设,攀枝花营业执照网上怎么年审?  微课制作网站有哪些,微课网怎么进?  网站制作网站,深圳做网站哪家比较好?  如何确保FTP站点访问权限与数据传输安全?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  如何在建站宝盒中设置产品搜索功能?  如何快速搭建FTP站点实现文件共享?  建站之星安装后如何配置SEO及设计样式?  h5在线制作网站电脑版下载,h5网页制作软件?  杭州银行网站设计制作流程,杭州银行怎么开通认证方式?  存储型VPS适合搭建中小型网站吗?  网站制作的方法有哪些,如何将自己制作的网站发布到网上?  建站中国官网:模板定制+SEO优化+建站流程一站式指南  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  视频网站app制作软件,有什么好的视频聊天网站或者软件?  如何快速搭建支持数据库操作的智能建站平台?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  广州商城建站系统开发成本与周期如何控制?  SQL查询语句优化的实用方法总结  独立制作一个网站多少钱,建立网站需要花多少钱?  如何构建满足综合性能需求的优质建站方案? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。