皮皮网

【linux内核源码剖析tcp ip实现】【上门按摩 源码】【zlg 源码gui】jui 源码

时间:2024-12-28 19:54:25 分类:焦点 来源:挖矿盘源码

1.在控制面板里怎么弄新增空白面板?急用
2.什么是肖恩·范宁
3.如何在thinkphp中使用b-jui

jui 源码

在控制面板里怎么弄新增空白面板?急用

       控制面板里的个人首页维护

       里面有自定义空白面板

       设置好之后

       再把个人首页维护的窗口拉到最下

       点击

       定制我的首页——添加模块——自定义空白面板(下面有你新创建的,打勾)——最下面的选取——保存

       就成功了

什么是肖恩·范宁

       肖恩·范宁是全球第一个走红的P2P文件共享平台Napster的创始人。在大多数人眼里,肖恩·范宁算不上是一个“电脑黑客”,但是他对计算机世界的改变正是绝大多数黑客渴望去做却没有做到的。你记得他的linux内核源码剖析tcp ip实现名字吗,也许你知道他的昵称“Napster”,这是因为他的头发又短又卷,充满男子气概,所以大学的朋友都这样称呼他。后来他用这个名字给一个网站命名,通过该网站与朋友分享他最喜欢的音乐。

        人物经历

       研发出了社交网络工具Rupture

       范宁在美国东北大学读书时创立了Napster。不过,在经历过多次由唱片业主导的法律诉讼后,Napster后来成为Roxio公司的资产。年月,范宁又研发出了社交网络工具Rupture,供网络游戏《魔兽世界》的玩家方便地进行沟通。

       从大多数人的认知来说,肖恩·范宁很难被称为“黑客”。但是他对计算机世界的改变正是绝大多数黑客渴望去做却未做成的。范宁是全球第一个走红的P2P音乐交换软件Napster的创始人。也正是这个软件开始颠覆传统商业音乐格局。越来越多的人们开始进行网络下载音乐,而不再是跑去商店买CD。

       范宁的上门按摩 源码昵称是“Napster”,这是因为他的头发又短又卷,所以大学的朋友都这样称呼他。后来他用这个名字给一个网站命名,通过该网站与朋友分享他最喜欢的音乐。

       网站开通后不久范宁就结识了很多朋友,从此该网站上的音乐不断变化,从来没有重复过。人们发现,这种MP3格式的音乐听起来跟CD播放的音乐一样棒,但是前者是免费下载,而每张CD需要美元。为此唱片公司控告范宁,控告所有从Napster网站下载音乐的大学生。最后他们赢了这一仗,却输掉了这场战争。就像凤凰浴火重生一样,唱片公司和范宁最终达成妥协。这个软件开始颠覆传统商业音乐格局,越来越多的人们开始进行网络下载音乐,而不再去商店买CD。现在范宁已经从音乐业中退出。

       Napster创造

       年6月,美国东北大学学生Shawn Fanning创造了Napster,用于在学生中间搜索、共享MP3音乐文件。Napster上线后迅速风靡各高校内外,zlg 源码gui当然也就被唱片业视为眼中钉。 年7月,Napster在法庭要求下关闭。

       肖恩对Napster最初的创想来自大学时代一次偶然的寝室聚会,当时他就读于波士顿东北大学,喜好音乐的室友不停向他抱怨互联网上低效的MP3音乐链接。这一下子触动了肖恩,他在朦胧之中想出了P2P点对点音乐交换服务的原理,“人们的电脑硬盘上有很多音乐资料,而网络可以创造机会让喜欢音乐的人相互交流。”

       除了一些Unix服务器源码和基础的Windows编程,肖恩几乎什么都不懂。他找来一本Unix的编程教程,在大学一二年级放弃了自己的专业课程,挤出时间刻苦攻读编程语言。凭着一股韧劲和坚持,两年之后Napster诞生了。

       在开业的三个月内,肖恩疯狂地工作。他一直随身携带着笔记本电脑。不管他身处何方,无论是在观看棒球比赛还是在吃比萨,有一丁点创意,他都可以停下来工作。

       早期的Napster程序员很少,网站的openwrt 源码地址主要架构几乎是由肖恩一人担当。刚开张的网站也没有像样的办公室,肖恩就跑到在电脑游戏公司工作的舅舅那里上网,并开始为Napster工作。

       就这样,肖恩完成了Napster第一个大型程序,这个程序能够搜索音乐文件并且提供检索,所有的音乐文件地址被集中存放在一个的服务器中,这样使用者就能够方便地过滤上百个地址而找到自己需要的MP3文件。

       网站试运营时就广受大学网民欢迎,名声一传十十传百,很快就拥有万用户。肖恩也没想到Napster的商业前景竟然如此广阔的——一个大学生的幻想居然将造就一个商业帝国。风险投资商找上肖恩,游说他将Napster商业化。

       那是年1月某一天晚上,肖恩与投资商结束会谈后,驾车与表妹一同返回学校。他满脑子都是Napster的事情。“一旦我决定要全身心投入某件事情,我就会把它做到最完美。”

       他们回到学校宿舍后,走神的肖恩停下车,独自一人在校园漫步。围着学校绕行一圈后,他对表妹说他不想继续求学了,然后一人钻进汽车里,双目定位源码开走了。他走的如此匆忙,以致于衣服和书籍都没有带走。

       离开大学

       肖恩辍学离开了大学,成了.com大潮中又一个放弃学位的年轻创业者。但他看到P2P服务的原理通过网站和谐地运行,成千上万的人从中得到了满足和愉悦。他下定决心要把Napster的事业进行到底。

       肖恩的献身精神深深感染着身边的每一个人,很多人就因此加入了Napster。肖恩的朋友,Napster的程序员阿里·阿曼达认为,像肖恩这样优秀的技术型管理者与普通人很重要的不同点在于“执着”。“像Napster这样的网站一个人本来是不可能完成,更别说是一个岁的年轻人,但是他做到了。”

       根据Media Metrix的数据,Napster几乎是当时成长最快的网站。肖恩作为一个勤奋的IT天才也被媒体们挖掘了出来,包装成数码时代的“音乐先锋”。他成了《财富》、《商业周刊》、《福布斯》和《行业标准》等商业刊物的封面人物,他的脸、他打棒球的英姿和他的名字一起成了网络授权文件交换服务的代名词。

       Napster的出现,高兴的是网民,唱片业及其相关的音乐制作产业却倒了大霉。唱片业人士惊讶地发现,几乎所有网民都会熟练地使用音乐格式转换软件或者网络音乐交换服务,把他们手中的CD光盘转制成几十兆的MP3音乐,相互在网上交流。

       Napster和肖恩出名了,但是网站的麻烦也随之而来。由于音乐交换服务在法律版权、知识产权方面的先天不足,它触及了传统音乐制作行业的利益。这一点,肖恩创业之初并没有想清楚。

       Napster这类音乐交换网站的存在大大地影响了传统产业的利益。根据美林银行的报告,近年来唱片业持续衰退,继年~年三年创下年销售额亿美元佳绩后,年唱片业的业绩滑落到亿美元,年只有亿,而同期网络音乐却是异军突起。

       为了争夺网上娱乐市场,世界三大唱片公司——英国的EMI百代公司,德国的贝塔斯曼,美国的AOL时代华纳都推出了各自的在线音乐服务网站,但是它们都无法与Napster竞争。

       巨大的商业利益导致双方多次爆发冲突。年月,包括华纳、BMG、百代、索尼、环宇五大唱片公司在内的唱片公司共同起诉Napster。由于涉及网络服务这个新生事物,案件审理一拖再拖。到了年的2月日,法院出具裁决,认定Napster侵权。

       这场官司虽未把Napster逼上绝路,但已让其元气大伤。网站不得不修改程序框架和服务流程,并将涉及版权争论的大量音乐文件删除。这样一来Napster就对网民失去了吸引力。根据Juipter公布的数据,与年2月相比,败诉后的Napster用户访问时间和数量分别减少%和%。

        人物评价

       程序员出身的肖恩尽管是CEO,但是他无力领导Napster与传统巨鳄周旋,只得退位让贤。年7月日,网站宣布任命康奈德·希尔伯斯为公司首席执行官,肖恩退居CTO。希尔伯斯以前是BMG唱片公司执行副总裁兼首席行政官,也曾在美国在线欧洲分部担任要职。

       肖恩和Napster都以为,只要找到一个既懂得经营网站业务,又在音乐工业有过任职经验的专业人才,就能改善与传统产业的沟通,网站也就有了出路。但事实上,临阵换将并不能在短时期内改变Napster官司缠身的尴尬局面,何况管理层还要在唱片界不断施压,蚕食其用户的情况下,说服Napster的用户,使用网站提供的收费服务。

       Napster此后,Napster可谓命运多舛。BMG唱片公司在年5月宣布收购Napster,但随后在9月被破产法官否决。在清算拍卖中,Roxio得到 了Napster,并在年5月重新发布了Napster 2.0。年8月,Roxio将自己的品牌和消费软件以万美元的价格卖给了Sonic Solutions,并将自己改名为Npaster, Inc.,并于年1月在纳斯达克上市。年9月,美国电器连锁零售商Best Buy百思买公司以1.亿美元的价格收购了Napster,但此后其业务一直难以复兴。

       百思买公司年5月宣布,将于当地时间周二在美国重启Napster,提供音乐下载服务,对抗iTunes商店、亚马逊网上音乐商店等同类产品。新 Napster的形式类似于微软的Zune Pass包月制,但价格更低,用户只要每月支付4.美元(微软Zune Pass为每月.美元),就可以无限量下载音乐播放,但每月只有5首可永久保留(微软服务为首)。新Napster目前仅针对美国用户,其曲库拥有超过万首“CD质量”MP3,还包括个频道的网络电台直播等,音乐下载后可传输到iPod、iPhone(手机上网)以及其他MP3播放器或音乐手机播放。

       Napster曾是火极一时的音乐分享网站,这一次,它的创始人Shawn Fanning创立了Rupture网站,他的目标是把社交网站带到火爆在线游戏,比如魔兽世界。专家们认为这是一个很有前途的领域,因为数百万的游戏者通过游戏彼此集结成社区,但是由于私人软件的限制使得这些社区不能扩大。

       对于Fanning而言,关于 Rupture的想法来自于参与魔兽世界游戏的过程中,这个游戏有万用户。他越来越觉得,对于玩家而言,要组织游戏或知道他人身份上并不是那么容易。

       如今,他已经从Ron Conway 和Joi Ito那里获得了种子资金。Conway曾经是 Napster的投资者,后来又投资了 Fanning创建的SnoCap,一家音乐商店,最近和MySpace形成合作。

       事实上,在魔兽世界以及其他游戏中,用户也可以设置姓名和个人资料,但是并没有人把这些服务提升到一个新的水平。而Rupture中将会设定一个个人或者是群组的等级,让游戏和聊天更容易。

如何在thinkphp中使用b-jui

       B-JUI 前端框架

       B-JUI(Bootstrap for DWZ)是一个富客户端框架,基于DWZ-jUI富客户端框架修改。

       æœ¬æ–‡æ˜¯B-JUI中文使用手册,包括使用示例代码,感兴趣的同学参考下。

       æ¦‚览

       B-JUI仅有一个主页面(document),框架内的所有子页面将通过Ajax获取后作为一个页面片段附加到主页面上,外部页面则通过iframe嵌入主页面, 本节介绍 B-JUI的主页面结构。

       HTML5 文档类型

       åŒBootstrap, B-JUI使用 HTML5 文档类型,参照下面的格式进行设置。

       <!DOCTYPE html>

       <html lang="zh-CN">

        ...

       </html>

       ä¸»é¡µé¢ç»“æž„(仅body部分)

       ä¸»é¡µé¢ç”±ä¸Šï¼ˆé¡µå¤´ï¼‰ã€ä¸­å·¦ï¼ˆå¯¼èˆªèœå•ï¼‰ã€ä¸­å³ï¼ˆå·¥ä½œåŒºï¼‰ã€ä¸‹ï¼ˆé¡µè„šï¼‰å››éƒ¨åˆ†ç»„成,其中左侧导航菜单可收缩。结构如下:

       <header class="bjui-header" id="bjui-header">

        <!-- 页头 -->

       </header>

       <div class="bjui-leftside" id="bjui-leftside">

        <!-- 导航菜单 -->

       </div>

       <div id="bjui-container">

        <!-- 工作区 -->

       </div>

       <footer class="bjui-footer" id="bjui-footer">

        <!-- 页脚 -->

       </footer>

       å­é¡µé¢ï¼ˆå³é¡µé¢ç‰‡æ®µ[后面简称:页片])结构

       é¡µç‰‡é€šå¸¸ç”±ä¸¤éƒ¨åˆ†ç»„成,也可以只保留bjui-pageContent部分,其中bjui-pageContent部分可选bjui-headBar(顶部工具条)和bjui-footBar(底部工具条)。结构如下:

       <div class="bjui-pageHeader">

        <!-- 顶部模块[如:功能按钮、搜索面板] -->

       </div>

       <div class="bjui-pageContent">

        <div class="bjui-headBar">

        <!-- 顶部工具条 -->

        </div>

        <div data-layout-h="0">

        <!-- 内容区 -->

        </div>

        <div class="bjui-footBar">

        <!-- 底部工具条 -->

        </div>

       </div>

       data-layout-h 属性表示该容器为页片自适应布局,当值为0时,B-JUI会为该容器的高度自动赋值为:本页片总高度减去本页片中的固定元素(bjui-pageHeader\bjui-headBar\bjui-footBar)高度。

       data-layout-h 属性值不等于0时,该容器高度为本页片总高度减去属性值。

       éœ€è¦è‡ªå®šä¹‰å›ºå®šå…ƒç´ (块级元素有效),请为该元素添加属性data-layout-fixed="true"

       å®Œæ•´çš„页片详见B-JUI源代码的table.html,仅bjui-pageContent部分的页片详见form.html

       å…ƒç´ ID命名规范

       å› ä¸ºæœ¬æ¡†æž¶é»˜è®¤æ‰€æœ‰å†…容都位于一个Document中,所以为元素命名ID的时候需要做到唯一性,如果确实不可避免的会出现有重复ID的现象,需要操作当前页片的元素时,尽量用:

       $.CurrentNavtab.find('#dom-id'),在当前标签工作区中查找指定ID的元素。

       æˆ– $.CurrentDialog.find('#dom-id'),在当前弹窗中查找指定ID的元素。

       æ ‡ç­¾å¼å·¥ä½œåŒº(navtab)

       B-JUI框架的整个工作区部分就是一个navtab组件,本组件位于主页面的"#bjui-container"容器内,固定的html结构如下:

       <div id="bjui-navtab" class="tabsPage">

        <div class="tabsPageHeader">

        <div class="tabsPageHeaderContent">

        <ul class="navtab-tab nav nav-tabs">

        <li data-tabid="main" class="main active"><a href="javascript:;"><span>我的主页</span></a></li>

        </ul>

        </div>

        <div class="tabsLeft"><i class="fa fa-angle-double-left"></i></div>

        <div class="tabsRight"><i class="fa fa-angle-double-right"></i></div>

        <div class="tabsMore"><i class="fa fa-angle-double-down"></i></div>

        </div>

        <ul class="tabsMoreList">

        <li><a href="javascript:;">我的主页</a></li>

        </ul>

        <div class="navtab-panel tabsPageContent layoutBox">

        各页片内容区域

        </div>

       </div>

       ç”¨æ³•(如何创建一个navtab):

       DOM点击触发:

       <a href="mytab.html" data-toggle="navtab" data-id="mynavtab" data-title="我的业务页面">打开navtab</a>

       <button type="button" class="btn-green" data-toggle="navtab" data-id="mynavtab" data-url="mytab.html" data-title="我的业务页面">打开navtab</button>

       jQuery:

       $(selector).navtab({ id:'标签的id', url:'载入页片的url', title:'标签的标题'})

       å–得当前navtab的内容容器:$.CurrentNavtab

       å‚数:

       åç§° 类型 默认值 描述 id string navtab 标签的ID,如果指定重复,将覆盖现有的ID相同标签。 title string New tab 标签打开后显示的名称。 url string undefined 请求数据的url。 type string GET Http请求方式,可选‘GET/POST’。 data object { } 请求url时,需要发送的data数据。

       æ–¹æ³•ï¼š

       è¿™æ ·è°ƒç”¨navtab的方法:

       $(selector).navtab('方法名', 参数1, ..., 参数n)

       å¦‚要切换到某个标签:

       $(selector).navtab('switchTab', 标签ID)

       æ–¹æ‹¬å·çš„参数,表示该参数可选。

       å¯ç”¨çš„方法:

       switchTab(tabid):切换到某个标签。

       refresh(tabid):刷新某个标签。

       reload(options):重新载入某个标签,options同navtab默认参数,如果未指定ID,则默认重载入当前标签。

       closeTab(tabid):关闭某个标签。

       closeCurrentTab([tabid]):关闭当前标签。

       closeAllTab():关闭所有标签。

       äº‹ä»¶ï¼š

       è¿™æ ·ç›‘听navtab的事件:

       $(document).on('bjui.beforeLoadNavtab', function(e) {

        var $navtab = $(e.target)

        // do something...

       })

       åç§° 描述 bjui.beforeLoadNavtab 载入标签内容前的事件 bjui.beforeCloseNavtab 关闭标签前的事件

       å¼¹å‡ºçª—口(dialog)

       å¼¹å‡ºçª—口分为普通弹出窗口和模态弹出窗口,普通弹出窗口可通过taskBar组件进行最小化等操作。弹出窗口的DOM结构会放入Body中,结构如下:

       <div class="bjui-dialog bjui-dialog-container">

        <div class="dialogHeader">

        <!-- 最大化、最小化、关闭等按钮区 -->

        <h1><!-- 标题 --></h1>

        </div>

        <div class="dialogContent layoutBox unitBox">

        <!-- 页片内容区 -->

        </div>

        <!-- 用于调整大小的div片断 -->

       </div>

       ç”¨æ³•(如何创建一个dialog):

       DOM点击触发:

       <a href="mydialog.html" data-toggle="dialog" data-id="mydialog" data-title="我的弹出窗口">打开弹出窗口</a>

       <button type="button" class="btn-green" data-toggle="dialog" data-id="mynavtab" data-url="mytab.html" data-title="我的弹出窗口">打开弹出窗口</button>

       jQuery:

       $(selector).dialog({ id:'弹窗的id', url:'载入页片的url', title:'弹窗的标题'})

       å–得当前dialog:$.CurrentDialog

       å‚数:

       åç§° 类型 默认值 描述 id string navtab 弹窗的ID,如果指定重复,将覆盖现有的ID相同弹窗。 title string New tab 弹窗打开后显示的名称。 url string undefined 请求数据的url。 type string GET Http请求方式,可选‘GET/POST’。 data object { } 请求url时,需要发送的data数据。 width int 弹窗的宽度。 height int 弹窗的高度。 max boolean false 打开弹窗时直接最大化。 mask boolean false 是否模态窗口。 resizable boolean true 可以调整弹窗的大小。 drawable boolean true 可以拖动弹窗。 maxable boolean true 是否显示最大化按钮。 minable boolean true 是否显示最小化按钮(模态弹窗无效)。

       æ–¹æ³•ï¼š

       è°ƒç”¨æ–¹å¼åŒnavtab: 如要关闭某个弹窗:

       $(selector).dialog('close', 弹窗ID)

       æ–¹æ‹¬å·çš„参数,表示该参数可选。

       å¯ç”¨çš„方法:

       switchDialog(id):切换到某个弹窗(模态弹窗无效)。

       refresh(id):刷新某个弹窗。

       reload(options):重新载入某个弹窗,options同dialog默认参数,如果未指定ID,则默认重载入当前弹窗。

       close(id):关闭某个弹窗。

       closeCurrent():关闭当前弹窗。

       äº‹ä»¶ï¼š

       è¿™æ ·ç›‘听dialog的事件:

       $(document).on('bjui.beforeLoadDialog', function(e) {

        var $dialog = $(e.target)

        // do something...

       })

       åç§° 描述 bjui.beforeLoadDialog 载入弹窗内容前的事件 bjui.beforeCloseDialog 关闭弹窗前的事件

       Ajax

       æœ¬èŠ‚主要介绍B-JUI框架中的Ajax操作,回调函数等。

       Ajax操作:

       ajax搜索 - 主要用于搜索表单,分页表单,例:B-JUI源码"table.html"中的#pagerForm:

       <form id="pagerForm" data-toggle="ajaxsearch" action="table.html" method="post">

       ajax重置搜索 - 主要用于重置搜索表单,data-clear-query属性告诉form是否清空查询参数,仅保留分页及字段排序信息,例:B-JUI源码"table.html"中的清空查询按钮:

       <a class="btn btn-orange" href="javascript:;" data-toggle="reloadsearch" data-clear-query="true" data-icon="undo">清空查询</a>

       ajax载入 - 主要用于为指定容器载入url的内容,data-target属性值为选择器表达式,告诉ajax载入的内容放到该容器,适合用来做局部刷新:

       <a href="table-edit.html" data-toggle="ajaxload" data-target="#D">加载内容</a>

       ajax动作 - 主要用于执行ajax命令,如“删除”,data-confirm-msg属性用于在操作前进行确认提示:

       <a href="del.html" class="btn btn-red" data-toggle="doajax" data-confirm-msg="确定要删除该行信息吗?">删除数据</a>

       ajax导出 - 主要用于导出信息(下载文件),data-confirm-msg属性用于在操作前进行确认提示:

       <a href="book1.xlsx" data-toggle="doexport" data-confirm-msg="确定要导出信息吗?">导出全部</a>

       ajax导出选中项 - 主要用于导出选中项信息(下载文件),data-confirm-msg属性用于在操作前进行确认提示,data-idname属性指定发送到后台的字段名称,默认“ids”,data-group属性用于指定复选框的name:

       <a href="book1.xlsx" data-toggle="doexportchecked" data-confirm-msg="确定要导出选中项吗?" data-idname="expids" data-group="ids">导出选中项</a>

       ajax删除选中项 - 主要用于导出选中项信息(下载文件),data-confirm-msg属性用于在操作前进行确认提示,data-idname属性指定发送到后台的字段名称,默认“ids”,data-group属性用于指定复选框的name:

       <a href="del.html" data-toggle="dodelchecked" data-confirm-msg="确定要删除选中项吗?" data-idname="delids" data-group="ids">导出选中项</a>

       Ajax回调:

       ajaxsearch、doajax、dodelchecked三种ajax操作支持自定义ajax回调函数,自定义的回调函数放到data-callback属性,写法如下:。

       <a href="del.html" class="btn btn-red" data-toggle="doajax" data-confirm-msg="确定要删除该行信息吗?" data-callback="mycallback">删除数据</a>

       function mycallback(json) {

        //do something...

       }

       æœåŠ¡ç«¯è¿”回的JSON参数如下:

       åç§° 类型 描述 statusCode int 必选。状态码(ok = , error = , timeout = ),可以在BJUI.init时配置三个参数的默认值。 message string 可选。信息内容。 tabid string 可选。待刷新navtab id,多个id以英文逗号分隔开,当前的navtab id不需要填写,填写后可能会导致当前navtab重复刷新。 closeCurrent boolean 可选。是否关闭当前窗口(navtab或dialog)。 forward string 可选。跳转到某个url。 forwardConfirm string 可选。跳转url前的确认提示信息。

       é»˜è®¤çš„回调函数会根据当前触发元素的位置确定是刷新navtab还是dialog,或是局部div容器。

       å¯è°ƒç”¨çš„返回信息提示:

       $(selector).bjuiajax('ajaxDone', json)

       è¡¨æ ¼

       è¡¨æ ¼çš„Class同Bootstrap,仅调整了padding值,使表格显示得更紧凑。

       .table 少量的padding和水平分隔线。

       .table-striped 条纹状表格 [IE8 不支持]。

       .table-bordered 带边框表格。

       .table-hover 附加鼠标悬停效果。

       è¡¨æ ¼è¡¨å¤´å­—段排序按钮实现:

       <th data-order-field="sex">姓名</th>

       <th data-order-direction="asc" data-order-field="createtime">创建时间</th>

       data-order-field=""属性令本字段可排序,属性值为与后台交互的字段名称。

       data-order-direction属性表示本字段的当前排序状态,可选值(asc/desc)

       æ™®é€šè¡¨æ ¼

       æ™®é€šçš„表格,可显示列表状条目,或布局表单,表头字段可附加排序按钮。

       å®Œæ•´çš„实例详见B-JUI源代码的table.html。

       å›ºå®šè¡¨å¤´è¡¨æ ¼

       è¡¨æ ¼çš„头可固定住,可调整各列的宽度,表头字段可附加排序按钮。

       <table data-toggle="tablefixed" data-width="%" data-layout-h="0">

       è¡¨æ ¼æ·»åŠ å±žæ€§data-toggle="tablefixed"后就会固定表头,B-JUI默认为固定的表头的表格添加Class:table table-striped table-bordered table-hover,如果该table设置有Class,则以设置的为准

       data-width属性可定义固定表格的宽度,默认为"%",可设置大于%或固定值,如:%和都是合法的,超过navtab工作区的宽度时会出现横向滚动条。

       å®Œæ•´çš„实例详见B-JUI源代码的table-fixed.html。

       å¯ç¼–辑表格

       ç”¨äºŽéœ€è¦åŠ¨æ€æ·»åŠ ç®€å•è¡Œå†…容的地方。

       <table class="table table-bordered table-hover table-striped" data-toggle="tabledit" data-initnum="0" data-layout-h="0">

        <thead>

        <tr>

        <th title="No."><input type="text" name="edit[#index#].id" class="no" data-rule="required" value="1" size="2"></th>

        <th title="姓名"><input type="text" name="edit[#index#].name" data-rule="required" value="" size="5"></th>

        <th title="" data-addtool="true" width="">

        <a href="javascript:;" class="btn btn-red row-del" data-confirm-msg="确定要删除该行信息吗?">删</a>

        </th>

        </tr>

        </thead>

       </table>

       å®žçŽ°æ­¥éª¤ï¼š

       è¡¨æ ¼æ·»åŠ å±žæ€§data-toggle="tablefixed";

       thead中添加上对应的表单信息,字段名放到title属性上;

       è‹¥æƒ³åœ¨æŸåˆ—上显示添加按钮,需在对应列上添加属性data-addtool="true";

       è‹¥æ¯è¡Œæ˜¾ç¤ºåˆ é™¤æŒ‰é’®ï¼Œéœ€ä¸ºåˆ é™¤æŒ‰é’®æ·»åŠ Classrow-del,如果要确认才能删除,需为删除按钮添加属性data-confirm-msg="删除提示信息"。

       è¡¨æ ¼çš„data-initnum属性,表示载入本页片时,初始化的添加行数,值为0时不需写。

       å¤–部触发添加行事件:

       æŒ‰é’®å¼ï¼š

       <button type="button" class="btn-green" data-toggle="tableditadd" data-target="#tabledit1" data-num="1">添加编辑行</button>

       data-target属性设置编辑表格的jQuery选择器,data-num属性设置点击时添加的行数。

       jQuery:$(selector).tabledit('add', 编辑表格的jQuery对象, 待添加的行数)

       $(selector).tabledit('add', $('#tabledit1'), 2)

       å®Œæ•´çš„实例详见B-JUI源代码的table-edit.html。

copyright © 2016 powered by 皮皮网   sitemap