BootStrap智能表單實(shí)戰(zhàn)系列(四)表單布局介紹
什么是 Bootstrap?
Bootstrap 是一個(gè)用于快速開(kāi)發(fā) Web 應(yīng)用程序和網(wǎng)站的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的。
表單的布局分為自動(dòng)布局和自定義布局兩種:
自動(dòng)布局就是根據(jù)配置項(xiàng)中第二級(jí)配置項(xiàng)中數(shù)組的長(zhǎng)度來(lái)自動(dòng)使用不同的bootstrap柵格,通過(guò)設(shè)置autoLayout為true可以實(shí)現(xiàn)自動(dòng)布局
自動(dòng)以布局就是根據(jù)autoLayout來(lái)決定使用的柵格,通過(guò)設(shè)置autoLayout:'1,2,1,2,2,4' 表示 第一、二列占3格,第三列占6格子
自動(dòng)布局代碼如下所示(https://github.com/xiexingen/Bootstrap-SmartForm/blob/master/demo/form2-auto-layout.html):
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>自動(dòng)布局</title>
<link rel="stylesheet" href="../css/bootstrap.css">
<script src="../lib/jquery.js"></script>
<script src="../lib/bootstrap.js"></script>
<!--工具方法-->
<script src="../scripts/global.js"></script>
<!--插件-->
<script src="../scripts/plugin.js"></script>
</head>
<body>
<div class="panel panel-default">
<div class="panel-heading"><label>自動(dòng)布局</label></div>
<div class="panel-body">
<form action="#" id="formContainer" class="form form-horizontal"></form>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading"><label>介紹</label></div>
<div class="panel-body">
<h3>所謂的自動(dòng)布局為:根據(jù)單個(gè)配置組的個(gè)數(shù)來(lái)自動(dòng)使用不同的柵格,如:數(shù)組里面項(xiàng)數(shù)位2,則使用2,4,2,4布局</h3>
<p>依賴于bootstrap個(gè)柵格樣式,僅支持12整分的格式,如果你配置5項(xiàng),是不支持的</p>
</div>
</div>
<script>
$(function () {
var eles=[
[
{ele:{type:'text',name:'UserName',title:'用戶名:',required:true}},
{ele:{type:'radio',name:'sex',title:'性別:',items:[{text:'男',value:1},{text:'女',value:2}]}},
],
[
{ele:{type:'checkbox', name:'plant',title:'使用平臺(tái):',items:[{text:'APP',value:'app'},{text:'web',value:'web'}]}},
{ele:{type:'select',name:'province',title:'省份:',withNull:true,items:[{text:'廣東',value:'GD'},{text:'湖南',value:'HN'}]}}
],
[
{ele:{type:'text',name:'DisplayName',title:'顯示名稱:'}},
{ele:{type:'datetime',name:'FromeDate',title:'有效期:'}},
{ele:{type:'datetime',name:'ToDate',title:'~'}}
]
];
//隱藏表單元素主要用于編輯時(shí)候后臺(tái)可以區(qū)別開(kāi)來(lái)
var hides = [{ id: 'GUID' }];
var bsForm = new BSForm({ eles: eles, hides: hides, autoLayout:true }).Render('formContainer');
});
</script>
</body>
</html>
運(yùn)行效果圖:

可以看到我配置文件中第一、2項(xiàng)配了2列,第三項(xiàng)配置了3列,所以生成的div.form-group 第一項(xiàng)和第二項(xiàng)使用:2,4 第三項(xiàng)使用:1,3 從界面來(lái)看ui顯示好不友好,所以autoLayout:true一般用于特殊場(chǎng)景及每一項(xiàng)都是相等的情況下使用。
自定義布局代碼(https://github.com/xiexingen/Bootstrap-SmartForm/blob/master/demo/form2-fix-layout.html):
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>自定義布局</title>
<link rel="stylesheet" href="../css/bootstrap.css">
<!--自定義站點(diǎn)樣式-->
<link rel="stylesheet" href="../css/site.css">
<script src="../lib/jquery.js"></script>
<script src="../lib/bootstrap.js"></script>
<!--工具方法-->
<script src="../scripts/global.js"></script>
<!--插件-->
<script src="../scripts/plugin.js"></script>
</head>
<body>
<div class="panel panel-default">
<div class="panel-heading"><label>自定義布局</label></div>
<div class="panel-body">
<form action="#" id="formContainer" class="form form-horizontal"></form>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading"><label>介紹</label></div>
<div class="panel-body">
<h3>固定布局,即根據(jù)配置的布局來(lái)布局</h3>
<p>如果你配置的autoLayout:1,2 將使用1,2柵格來(lái)顯示</p>
<p>如果你配置的autoLayout:1,2,2,4 第一個(gè)元素將使用1,2來(lái)布局,第二個(gè)將使用2,4來(lái)布局 如果沒(méi)有2,4系統(tǒng)將會(huì)自動(dòng)尋找1,2</p>
</div>
</div>
<script>
$(function () {
var eles=[
[
{ele:{type:'text',name:'UserName',title:'用戶名:',required:true}},
{ele:{type:'radio',name:'sex',title:'性別:',items:[{text:'男',value:1},{text:'女',value:2}]}},
{ele:{type:'checkbox', name:'plant',title:'使用平臺(tái):',items:[{text:'APP',value:'app'},{text:'web',value:'web'}]}},
{ele:{type:'select',name:'province',title:'省份:',withNull:true,items:[{text:'廣東',value:'GD'},{text:'湖南',value:'HN'}]}}
],
[
{ele:{type:'text',name:'DisplayName',title:'顯示名稱:'}},
{ele:{type:'datetime',name:'FromeDate',title:'有效期:'}},
{ele:{type:'datetime',name:'ToDate',title:'~'}}
]
];
//隱藏表單元素主要用于編輯時(shí)候后臺(tái)可以區(qū)別開(kāi)來(lái)
var hides = [{ id: 'GUID' }];
var bsForm = new BSForm({ eles: eles, hides: hides, autoLayout: '1,2,1,2' }).Render('formContainer');
});
</script>
</body></html>
效果圖如下:

note:如果頁(yè)面有4列,但是配置的autoLayout不足的情況后面的部分將會(huì)使用前面的布局,即將第一列作為缺省的配置列.
以上所述是小編給大家介紹的BootStrap智能表單實(shí)戰(zhàn)系列(四)表單布局介紹的全部敘述,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Bootstrap表單布局樣式代碼
- BootStrap 智能表單實(shí)戰(zhàn)系列(五) 表單依賴插件處理
- BootStrap智能表單實(shí)戰(zhàn)系列(六)表單編輯頁(yè)面的數(shù)據(jù)綁定
- BootStrap智能表單實(shí)戰(zhàn)系列(七)驗(yàn)證的支持
- BootStrap智能表單實(shí)戰(zhàn)系列(八)表單配置json詳解
- BootStrap智能表單實(shí)戰(zhàn)系列(九)表單圖片上傳的支持
- BootStrap 智能表單實(shí)戰(zhàn)系列(十)自動(dòng)完成組件的支持
- BootStrap智能表單實(shí)戰(zhàn)系列(十一)級(jí)聯(lián)下拉的支持
- 第七篇Bootstrap表單布局實(shí)例代碼詳解(三種表單布局)
相關(guān)文章
js實(shí)現(xiàn)數(shù)組去重方法及效率對(duì)比
本文主要介紹了js實(shí)現(xiàn)數(shù)組去重方法及效率對(duì)比。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-02-02
微信小程序自定義tab實(shí)現(xiàn)多層tab嵌套
這篇文章主要為大家詳細(xì)介紹了微信小程序自定義tab實(shí)現(xiàn)多層tab嵌套,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07
TypeScript?Pinia實(shí)戰(zhàn)分享(Vuex和Pinia對(duì)比梳理總結(jié))
這篇文章主要介紹了TypeScript?Pinia實(shí)戰(zhàn)分享(Vuex和Pinia對(duì)比梳理總結(jié)),今天我們?cè)賮?lái)實(shí)戰(zhàn)下官方推薦的新的vue狀態(tài)管理工具Pini,感興趣的小伙伴可以參考一下2022-06-06
微信小程序?qū)崿F(xiàn)頂部固定 底部分頁(yè)滾動(dòng)效果
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)頂部固定底部分頁(yè)滾動(dòng)效果,本文大概給大家分享三種解決方案,每種方案給大家詳細(xì)剖析通過(guò)代碼解析哪種方案更適合,感興趣的朋友跟隨小編一起看看吧2022-10-10
js實(shí)現(xiàn)無(wú)限級(jí)樹(shù)形導(dǎo)航列表效果代碼
這篇文章主要介紹了js實(shí)現(xiàn)無(wú)限級(jí)樹(shù)形導(dǎo)航列表效果代碼,通過(guò)一個(gè)封裝的JS類實(shí)現(xiàn)無(wú)限樹(shù)形導(dǎo)航的效果,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-09-09
JavaScript實(shí)現(xiàn)九宮格移動(dòng)拼圖游戲
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)九宮格移動(dòng)拼圖游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
靜態(tài)頁(yè)面也可以實(shí)現(xiàn)預(yù)覽 列表不同的顯示方式
靜態(tài)頁(yè)面也可以實(shí)現(xiàn)預(yù)覽 列表不同的顯示方式...2006-10-10
微信小程序通過(guò)點(diǎn)擊事件傳參(data-)的操作示例
微信小程序可以通過(guò)直接寫(xiě) data-index="1" 進(jìn)行數(shù)據(jù)的綁定 ,利用 bindtap 點(diǎn)擊事件執(zhí)行函數(shù)從而獲取到參數(shù)信息,本文給大家介紹微信小程序通過(guò)點(diǎn)擊事件傳參(data-)的操作,感興趣的朋友一起看看吧2023-12-12
js實(shí)現(xiàn)的倒計(jì)時(shí)按鈕實(shí)例
這篇文章主要介紹了js實(shí)現(xiàn)的倒計(jì)時(shí)按鈕,實(shí)例分析了javascript倒計(jì)時(shí)效果的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2015-06-06

