BootStrap智能表单实战系列(六)表单编辑页面的数据绑定


Posted in Javascript onJune 13, 2016

什么是 Bootstrap?

Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的。

历史

Bootstrap 是由 Twitter 的 Mark Otto 和 Jacob Thornton 开发的。Bootstrap 是 2011 年八月在 GitHub 上发布的开源产品。

Bootstrap 包的内容

基本结构:Bootstrap 提供了一个带有网格系统、链接样式、背景的基本结构。这将在 Bootstrap 基本结构 部分详细讲解。

CSS:Bootstrap 自带以下特性:全局的 CSS 设置、定义基本的 HTML 元素样式、可扩展的 class,以及一个先进的网格系统。这将在 Bootstrap CSS 部分详细讲解。

组件:Bootstrap 包含了十几个可重用的组件,用于创建图像、下拉菜单、导航、警告框、弹出框等等。这将在 布局组件 部分详细讲解。

JavaScript 插件:Bootstrap 包含了十几个自定义的 jQuery 插件。您可以直接包含所有的插件,也可以逐个包含这些插件。这将在 Bootstrap 插件 部分详细讲解。

定制:您可以定制 Bootstrap 的组件、LESS 变量和 jQuery 插件来得到您自己的版本。

本章介绍如何在生成表单后,将一个model的数据展示到form表单中(一般用于编辑页面)

代码如下(连接地址:https://github.com/xiexingen/Bootstrap-SmartForm/blob/master/demo/form4-initData.html):

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>数据绑定</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<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 class="pull-right">
<button id="btnSubmit" class="btn btn-primary btn-xs">提交表单</button>
</div>
</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 class="lead">表单数据绑定</h3>
<blockquote>
<p>将json格式的model绑定到表单中,此处使用模拟的model数据,实际环境中应该是与服务器交互取到数据,在配置对象的是需要一个回调方法,在回到方法里面可以做表单的一些其他操作,如添加表单验证、添加日期插件的支持====</p>
<p>note:复选框的数据源为数组形式</p>
</blockquote>
</div>
</div>
<script>
$(function () {
var eles=[
[
{label:{text:'自定义用户名:'},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:{pre:{text:'<input type="radio">'},type:'text',name:'displayName',title:'显示名称:'}},
{ele:{type:'search',title:'产品',id:'ProductName'}}
],
[
{ele:{type:'datetime',name:'FromeDate',title:'有效期:'}},
{ele:{type:'datetime',name:'ToDate',title:'~'}},
]
];
//隐藏表单元素主要用于编辑时候后台可以区别开来
var hides = [{ id: 'primaryKey' }];
var bsForm = new BSForm({ eles: eles, hides: hides, autoLayout: '1,3' }).Render('formContainer',function(bf){
var model={primaryKey:1,UserName:'xxg',sex:1,plant:['app','web'],province:'GD',displayName:'TEST',ProductName:'笔记本',FromeDate:'2015-06-10',ToDate:'2015-08-08'};
bf.InitFormData(model);
});
$("#btnSubmit").bind('click',function () {
var postData=bsForm.GetFormData();
alert("获取到的表达数据为:"+JSON.stringify(postData));
})
});
</script>
</body></html>

此处使用js创建了一个json类型的model,实际开发情况下 会跟服务器交互得到一个model,通过表单插件的InitFormData方法将model显示到form表单中

效果图如下:

BootStrap智能表单实战系列(六)表单编辑页面的数据绑定

定义的数据成功显示到表单中

note:针对复选框多选的情况下,需要返回的是一个数组

以上所述是小编给大家介绍的BootStrap智能表单实战系列(六)表单编辑页面的数据绑定的全部叙述,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JS 常用校验函数
Mar 26 Javascript
简单实用的全选反选按钮例子
Oct 18 Javascript
个人总结的一些JavaScript技巧、实用函数、简洁方法、编程细节
Jun 10 Javascript
详解javascript实现瀑布流绝对式布局
Jan 29 Javascript
Javascript字符串拼接小技巧(推荐)
Jun 02 Javascript
jQuery插件FusionCharts绘制的2D双面积图效果示例【附demo源码】
Apr 11 jQuery
小程序实现分类页
Jul 12 Javascript
vue 使用鼠标滚动加载数据的例子
Oct 31 Javascript
JavaScript canvas实现跟随鼠标事件
Feb 10 Javascript
使用vue实现通过变量动态拼接url
Jul 22 Javascript
vue 解决uglifyjs-webpack-plugin打包出现报错的问题
Aug 04 Javascript
Vue过滤器,生命周期函数和vue-resource简单介绍
Jan 12 Vue.js
js 截取或者替换字符串中的数字实现方法
Jun 13 #Javascript
BootStrap 智能表单实战系列(五) 表单依赖插件处理
Jun 13 #Javascript
BootStrap智能表单实战系列(四)表单布局介绍
Jun 13 #Javascript
JS/jQ实现免费获取手机验证码倒计时效果
Jun 13 #Javascript
BootStrap智能表单实战系列(三)分块表单配置详解
Jun 13 #Javascript
BootStrap 智能表单实战系列(二)BootStrap支持的类型简介
Jun 13 #Javascript
BootStrap智能表单demo示例详解
Jun 13 #Javascript
You might like
PHP输出两个数字中间有多少个回文数的方法
2015/03/23 PHP
Symfony实现行为和模板中取得request参数的方法
2016/03/17 PHP
PHP使用Session实现上传进度功能详解
2019/08/06 PHP
php设计模式之组合模式实例详解【星际争霸游戏案例】
2020/03/27 PHP
jquery 模拟雅虎首页的点击对话框效果
2010/04/11 Javascript
使用jquery与图片美化checkbox和radio控件的代码(打包下载)
2010/11/11 Javascript
function foo的原型与prototype属性解惑
2010/11/19 Javascript
仿猪八戒网左下角的文字滚动效果
2011/10/28 Javascript
JavaScript中的pow()方法使用详解
2015/06/15 Javascript
js中获取时间new Date()的全面介绍
2016/06/20 Javascript
js 创建对象 经典模式全面了解
2016/08/16 Javascript
用js写的一个路由(简单实例)
2016/09/24 Javascript
NODE.JS跨域问题的完美解决方案
2016/10/20 Javascript
JS 实现可停顿的垂直滚动实例代码
2016/11/23 Javascript
JQuery 选择器、DOM节点操作练习实例
2017/09/28 jQuery
微信小程序实现MUI数字输入框效果
2018/01/31 Javascript
vue组件实践之可搜索下拉框功能
2018/11/25 Javascript
微信小程序图表插件wx-charts用法实例详解
2019/05/20 Javascript
python实现可将字符转换成大写的tcp服务器实例
2015/04/29 Python
Python Sql数据库增删改查操作简单封装
2016/04/18 Python
python通过cookie模拟已登录状态的初步研究
2016/11/09 Python
Java编程迭代地删除文件夹及其下的所有文件实例
2018/02/10 Python
centos6.8安装python3.7无法import _ssl的解决方法
2018/09/17 Python
Python实现微信中找回好友、群聊用户撤回的消息功能示例
2019/08/23 Python
python随机生成库faker库api实例详解
2019/11/28 Python
下载与当前Chrome对应的chromedriver.exe(用于python+selenium)
2020/01/14 Python
浅谈pycharm导入pandas包遇到的问题及解决
2020/06/01 Python
matplotlib常见函数之plt.rcParams、matshow的使用(坐标轴设置)
2021/01/05 Python
CSS3 Media Queries(响应式布局可以让你定制不同的分辨率和设备)
2013/06/06 HTML / CSS
英国领先的高街书籍专家:Waterstones
2018/02/01 全球购物
土木工程毕业生自荐信
2013/11/12 职场文书
婚前协议书范本
2014/10/27 职场文书
2014年医生工作总结
2014/11/21 职场文书
大学生个人简历自荐信
2015/03/06 职场文书
2015年“公民道德宣传日”活动方案
2015/05/06 职场文书
浅谈golang package中init方法的多处定义及运行顺序问题
2021/05/06 Golang