BootStrap智能表單實戰(zhàn)系列(四)表單布局介紹
什么是 Bootstrap?
Bootstrap 是一個用于快速開發(fā) Web 應(yīng)用程序和網(wǎng)站的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的。
表單的布局分為自動布局和自定義布局兩種:
自動布局就是根據(jù)配置項中第二級配置項中數(shù)組的長度來自動使用不同的bootstrap柵格,通過設(shè)置autoLayout為true可以實現(xiàn)自動布局
自動以布局就是根據(jù)autoLayout來決定使用的柵格,通過設(shè)置autoLayout:'1,2,1,2,2,4' 表示 第一、二列占3格,第三列占6格子
自動布局代碼如下所示(https://github.com/xiexingen/Bootstrap-SmartForm/blob/master/demo/form2-auto-layout.html):
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>自動布局</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>自動布局</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ù)單個配置組的個數(shù)來自動使用不同的柵格,如:數(shù)組里面項數(shù)位2,則使用2,4,2,4布局</h3> <p>依賴于bootstrap個柵格樣式,僅支持12整分的格式,如果你配置5項,是不支持的</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:'使用平臺:',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:'~'}} ] ]; //隱藏表單元素主要用于編輯時候后臺可以區(qū)別開來 var hides = [{ id: 'GUID' }]; var bsForm = new BSForm({ eles: eles, hides: hides, autoLayout:true }).Render('formContainer'); }); </script> </body> </html>
運行效果圖:
可以看到我配置文件中第一、2項配了2列,第三項配置了3列,所以生成的div.form-group 第一項和第二項使用:2,4 第三項使用:1,3 從界面來看ui顯示好不友好,所以autoLayout:true一般用于特殊場景及每一項都是相等的情況下使用。
自定義布局代碼(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"> <!--自定義站點樣式--> <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ù)配置的布局來布局</h3> <p>如果你配置的autoLayout:1,2 將使用1,2柵格來顯示</p> <p>如果你配置的autoLayout:1,2,2,4 第一個元素將使用1,2來布局,第二個將使用2,4來布局 如果沒有2,4系統(tǒ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:'使用平臺:',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:'~'}} ] ]; //隱藏表單元素主要用于編輯時候后臺可以區(qū)別開來 var hides = [{ id: 'GUID' }]; var bsForm = new BSForm({ eles: eles, hides: hides, autoLayout: '1,2,1,2' }).Render('formContainer'); }); </script> </body></html>
效果圖如下:
note:如果頁面有4列,但是配置的autoLayout不足的情況后面的部分將會使用前面的布局,即將第一列作為缺省的配置列.
以上所述是小編給大家介紹的BootStrap智能表單實戰(zhàn)系列(四)表單布局介紹的全部敘述,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- Bootstrap表單布局樣式代碼
- BootStrap 智能表單實戰(zhàn)系列(五) 表單依賴插件處理
- BootStrap智能表單實戰(zhàn)系列(六)表單編輯頁面的數(shù)據(jù)綁定
- BootStrap智能表單實戰(zhàn)系列(七)驗證的支持
- BootStrap智能表單實戰(zhàn)系列(八)表單配置json詳解
- BootStrap智能表單實戰(zhàn)系列(九)表單圖片上傳的支持
- BootStrap 智能表單實戰(zhàn)系列(十)自動完成組件的支持
- BootStrap智能表單實戰(zhàn)系列(十一)級聯(lián)下拉的支持
- 第七篇Bootstrap表單布局實例代碼詳解(三種表單布局)
相關(guān)文章
javascript結(jié)合CSS實現(xiàn)蘋果開關(guān)按鈕特效
這篇文章主要介紹了javascript結(jié)合CSS實現(xiàn)蘋果開關(guān)按鈕特效的方法以及全部代碼,效果非常不錯,兼容性也很好,有需要的小伙伴自己參考下2015-04-04JavaScript中Object.prototype.toString方法的原理
這篇文章主要介紹了JavaScript中Object.prototype.toString方法的原理的相關(guān)資料,需要的朋友可以參考下2016-02-02js中flexible.js實現(xiàn)淘寶彈性布局方案
這篇文章主要為大家詳細(xì)介紹了js中flexible.js實現(xiàn)淘寶彈性布局方案,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2015-12-12RGB轉(zhuǎn)換實現(xiàn)代碼,淘寶前端開發(fā)工程師筆試題
寫一個轉(zhuǎn)換RGB的值的函數(shù),實現(xiàn)以下效果。2010-11-11javascript組合使用構(gòu)造函數(shù)模式和原型模式實例
這篇文章主要介紹了javascript組合使用構(gòu)造函數(shù)模式和原型模式的方法,通過一個簡單實例分析了javascript構(gòu)造函數(shù)模式與原型模式的使用方法,需要的朋友可以參考下2015-06-06JS實現(xiàn)數(shù)組簡單去重及數(shù)組根據(jù)對象中的元素去重操作示例
這篇文章主要介紹了JS實現(xiàn)數(shù)組簡單去重及數(shù)組根據(jù)對象中的元素去重操作,涉及javascript數(shù)組元素的遍歷、判斷、追加等操作實現(xiàn)去重功能的相關(guān)技巧,需要的朋友可以參考下2018-01-01