2018-04-09

1. 表格

Bootstrap Table

  • 支持 Bootstrap 3 和 Bootstrap 2
  • 自適應(yīng)界面
  • 固定表頭
  • 非常豐富的配置參數(shù)
  • 直接通過(guò)標(biāo)簽使用
  • 顯示/隱藏列
  • 顯示/隱藏表頭
  • 通過(guò) AJAX 獲取 JSON 格式的數(shù)據(jù)
  • 支持排序
  • 格式化表格
  • 支持單選或者多選
  • 強(qiáng)大的分頁(yè)功能
  • 支持卡片視圖
  • 支持多語(yǔ)言
  • 支持插件

例子:

$(function() {
var t = $("#table_server")
    .bootstrapTable(
    {
        url : WWWROOT
                + '/disinfectSystem/signRecordAction!getSignRecordTodayGrid.do?time='
                + new Date(),
        method : 'get',
        dataType : "json",
        showRefresh : "true",// 刷新按鈕
        dataField : "data",// 這是返回的json數(shù)組的key.默認(rèn)好像是"rows".這里只有前后端約定好就行
        striped : true,// 設(shè)置為 true 會(huì)有隔行變色效果
        undefinedText : "空",// 當(dāng)數(shù)據(jù)為 undefined 時(shí)顯示的字符
        pagination : true, // 分頁(yè)
        // paginationLoop:true,//設(shè)置為 true 啟用分頁(yè)條無(wú)限循環(huán)的功能拔妥。
        showColumns : "true",// 是否顯示 內(nèi)容列下拉框
        pageNumber : 1,// 如果設(shè)置了分頁(yè)橱鹏,首頁(yè)頁(yè)碼
        // showPaginationSwitch:true,//是否顯示 數(shù)據(jù)條數(shù)選擇框
        pageSize : 10,// 如果設(shè)置了分頁(yè),頁(yè)面數(shù)據(jù)條數(shù)
        pageList : [ 10, 30, 50 ], // 如果設(shè)置了分頁(yè)汁掠,設(shè)置可供選擇的頁(yè)面數(shù)據(jù)條數(shù)尖飞。設(shè)置為All
                                        // 則顯示所有記錄惶看。
        paginationPreText : '?',// 指定分頁(yè)條中上一頁(yè)按鈕的圖標(biāo)或文字,這里是<
        paginationNextText : '?',// 指定分頁(yè)條中下一頁(yè)按鈕的圖標(biāo)或文字,這里是>
        // singleSelect: false,//設(shè)置True 將禁止多選
        search : true, // 顯示搜索框
        data_local : "zh-US",// 表格漢化
        sidePagination : "server", // 服務(wù)端處理分頁(yè)
        responseHandler : responseHandler,
        queryParams : function(params) {// 自定義參數(shù)
            return {// 這里的params是table提供的
                start : params.offset, // 從數(shù)據(jù)庫(kù)第幾條記錄開始
                limit : params.limit, // 找多少條
                keyword : params.search
            };
        },
        idField : "id",// 指定主鍵列
        columns : [
                {
                    title : 'id',// 表的列名
                    field : 'id',// json數(shù)據(jù)中rows數(shù)組中的屬性名
                    align : 'center'// 水平居中
                },
                {
                    title : '簽收人',
                    field : 'signUserName',
                    align : 'center'
                },
                {
                    title : '簽收包數(shù)量',
                    field : 'signAmount',
                    align : 'center'
                },
                {
                    title : '生成記錄時(shí)間',
                    field : 'signDate',
                    align : 'center'
                },
                {
                    title : '操作',
                    field : 'id',
                    align : 'center',
                    formatter : function(value, row, index) {// 自定義顯示標(biāo)簽
                        return '<button type="button" onclick="printSignRecord(this,\''
                        + row.id
                        + '\')" class="btn btn-primary">打印</button>' 
                        + '<button type="button" onclick="changeTable(\''
                                + row.id
                                + '\')" class="btn btn-info btn-arrow-right">查看詳情</button> ';
                    }
                }

                ]
            });
    t.on('load-success.bs.table', function(data) {// table加載成功后的監(jiān)聽函數(shù)
        $(".pull-right").css("display", "block");
        $('#table_server').bootstrapTable('hideColumn', 'id');// 隱藏ID
    });

    // 請(qǐng)求成功方法
    function responseHandler(result) {
        /*
         * var errcode = result.errcode;//在此做了錯(cuò)誤代碼的判斷 if(errcode != 0){
         * alert("錯(cuò)誤代碼" + errcode); return; }
         */
        // 如果沒有錯(cuò)誤則返回?cái)?shù)據(jù)暂论,渲染表格
        return {
            total : result.totalCount, // 總頁(yè)數(shù),前面的key必須為"total"
            data : result.data  // 行數(shù)據(jù),前面的key要與之前設(shè)置的dataField的值一致.
        
        };
    }
    ;
});

2. 懸停顯示

bootstrap popover ->文檔

  • 在需要顯示的元素上加上data-toggle="popover"
<tr data-toggle="popover">
    ...
</tr>
  • js渲染
            $('[data-toggle="popover"]').each(function() {
                var element = $(this);
                var id = element.attr('id');
                var txt = element.html();
                element.popover({
                    trigger: 'manual',
                    placement: 'bottom', //top, bottom, left or right
                    title: txt,
                    html: 'true',
                    content: ContentMethod(txt),
                }).on("mouseenter", function() {
                    var _this = this;
                    $(this).popover("show");
                    $(this).siblings(".popover").on("mouseleave", function() {
                        $(_this).popover('hide');
                    });
                }).on("mouseleave", function() {
                    var _this = this;
                    setTimeout(function() {
                        if(!$(".popover:hover").length) {
                            $(_this).popover("hide")
                        }
                    }, 100);
                });
            });
        
  • 自定義內(nèi)容
        function ContentMethod(txt) {
            return '<div class="alert alert-success"><strong></strong>自定義任何內(nèi)容</div>'
        }

3. 下拉框組件

Bootstrap selectpicker ->文檔

  • 多選
  • 搜索
  • 分組選中
  • 自定義樣式
  • 可配置option圖標(biāo)加文字
  • 帶顏色的標(biāo)簽
  • 全選和反選
  • image
  • image
  • image

4. 使表格元素可編輯

  • 引入額外的js文件
<link rel="stylesheet" >
<script src="http://rawgit.com/vitalets/x-editable/master/dist/bootstrap3-editable/js/bootstrap-editable.js"></script>
<script src="~/Content/bootstrap-table/extensions/editable/bootstrap-table-editable.js"></script>
  • 在cshtml頁(yè)面定義表格時(shí)偶芍,添加兩個(gè)屬性
<table id="tb_departments">
        <thead>
            <tr>
                <th data-field="Name" data-editable="true">部門名稱</th>
                <th data-field="ParentName">上級(jí)部門</th>
                <th data-field="Level" data-editable="true">部門級(jí)別</th>
                <th data-field="Desc" data-editable="true">描述</th>
            </tr>
        </thead>
    </table>
  • 如果是在js里面初始化充择,寫法如下
{
         field: "name",
         title: "名稱",
         editable:true
}
  • 在js里渲染表格的時(shí)候,加上:
onEditableSave: function (field, row, oldValue, $el) {
                $.ajax({
                    type: "post",
                    url: "/Editable/Edit",
                    data: { strJson: JSON.stringify(row) },
                    success: function (data, status) {
                        if (status == "success") {
                            alert("編輯成功");
                        }
                    },
                    error: function () {
                        alert("Error");
                    },
                    complete: function () {

                    }

                });
            }
  • 最終效果如下
image

5. 模態(tài)框 -(阻塞型)

<h2>創(chuàng)建模態(tài)框(Modal)</h2>
<!-- 按鈕觸發(fā)模態(tài)框 -->
<button class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal">開始演示模態(tài)框</button>
<!-- 模態(tài)框(Modal) -->.
<div class="modal fade" id="myModal" 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">&times;</button>
                <h4 class="modal-title" id="myModalLabel">模態(tài)框(Modal)標(biāo)題</h4>
            </div>
            <div class="modal-body">在這里添加一些文本</div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">關(guān)閉</button>
                <button type="button" class="btn btn-primary">提交更改</button>
            </div>
        </div><!-- /.modal-content -->
    </div><!-- /.modal -->
</div>
  • 效果圖:
image
至于非阻塞的提示框匪蟀,Bootstarp里是沒有的椎麦,這里列出幾種供參考:
  • overhang.js
  • notyf.js

6 按鈕 Bootstarp Button ->文檔點(diǎn)這里

這個(gè)是額外引入的庫(kù),比原生的好用

  • 多種形狀和尺寸的按鈕樣式可供選擇
  • 帶邊框和不帶邊框的按鈕
  • 3D 按鈕
  • 突起樣式的按鈕
  • 光暈效果
  • 帶下拉菜單的按鈕

引入

<!-- Buttons 庫(kù)的核心文件 -->
<link rel="stylesheet" href="css/buttons.css">

<!-- 當(dāng)需要使用帶下拉菜單的按鈕時(shí)才需要加載下面的 JavaScript 文件 -->
<script src="http://cdn.bootcss.com/jquery/1.11.2/jquery.min.js"></script>

<script type="text/javascript" src="js/buttons.js"></script>

<!-- 只有使用字體圖標(biāo)時(shí)才需要加載 Font-Awesome -->
<link  rel="stylesheet">

效果圖

image
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末材彪,一起剝皮案震驚了整個(gè)濱河市观挎,隨后出現(xiàn)的幾起案子琴儿,更是在濱河造成了極大的恐慌,老刑警劉巖嘁捷,帶你破解...
    沈念sama閱讀 222,590評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件造成,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡雄嚣,警方通過(guò)查閱死者的電腦和手機(jī)晒屎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)缓升,“玉大人鼓鲁,你說(shuō)我怎么就攤上這事∽醒兀” “怎么了?”我有些...
    開封第一講書人閱讀 169,301評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵尺棋,是天一觀的道長(zhǎng)封锉。 經(jīng)常有香客問我,道長(zhǎng)膘螟,這世上最難降的妖魔是什么成福? 我笑而不...
    開封第一講書人閱讀 60,078評(píng)論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮荆残,結(jié)果婚禮上奴艾,老公的妹妹穿的比我還像新娘。我一直安慰自己内斯,他們只是感情好蕴潦,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,082評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著俘闯,像睡著了一般潭苞。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上真朗,一...
    開封第一講書人閱讀 52,682評(píng)論 1 312
  • 那天此疹,我揣著相機(jī)與錄音,去河邊找鬼遮婶。 笑死蝗碎,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的旗扑。 我是一名探鬼主播蹦骑,決...
    沈念sama閱讀 41,155評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼臀防!你這毒婦竟也來(lái)了脊串?” 一聲冷哼從身側(cè)響起辫呻,我...
    開封第一講書人閱讀 40,098評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎琼锋,沒想到半個(gè)月后放闺,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,638評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡缕坎,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,701評(píng)論 3 342
  • 正文 我和宋清朗相戀三年怖侦,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片谜叹。...
    茶點(diǎn)故事閱讀 40,852評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡匾寝,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出荷腊,到底是詐尸還是另有隱情艳悔,我是刑警寧澤,帶...
    沈念sama閱讀 36,520評(píng)論 5 351
  • 正文 年R本政府宣布女仰,位于F島的核電站猜年,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏疾忍。R本人自食惡果不足惜乔外,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,181評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望一罩。 院中可真熱鬧杨幼,春花似錦、人聲如沸聂渊。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)汉嗽。三九已至歹撒,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間诊胞,已是汗流浹背暖夭。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留撵孤,地道東北人迈着。 一個(gè)月前我還...
    沈念sama閱讀 49,279評(píng)論 3 379
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像邪码,于是被迫代替她去往敵國(guó)和親裕菠。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,851評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 用到的組件 1闭专、通過(guò)CocoaPods安裝 2奴潘、第三方類庫(kù)安裝 3旧烧、第三方服務(wù) 友盟社會(huì)化分享組件 友盟用戶反饋 ...
    SunnyLeong閱讀 14,627評(píng)論 1 180
  • 戀 似水 夢(mèng)連綿 唯有心瞻 欲欲越天淵 猶恐三疊陽(yáng)關(guān) 回腸九轉(zhuǎn)撥心尖 香草奶茶美人難咽 許我佳期無(wú)計(jì)相見難 四海為...
    本命多魚閱讀 511評(píng)論 0 1
  • 我有個(gè)同學(xué)叫劉凌,他長(zhǎng)得瘦骨嶙峋画髓,像只機(jī)靈的瘦猴子掘剪。兩道彎彎的眉毛下面,一雙亮晶晶的小眼睛炯炯有神奈虾。在班上被...
    金指尖的花園閱讀 986評(píng)論 0 4
  • 順序存儲(chǔ): 修改效率不高 因?yàn)樵诓迦牖蛘邉h除時(shí)候,為了保持原有的順序,平均需要移動(dòng)將近一半 存取速度快, 因?yàn)閷⒃?..
    bluewind1230閱讀 168評(píng)論 0 0