表单数据绑定(编辑页面的数据绑定)

本章介绍如何在生成表单后,将一个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表单中

效果图如下:

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

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

上一章:表单依赖插件处理

下一章:验证的支持

本系列首页:BootStrap 智能表单

时间: 2024-09-29 20:13:05

表单数据绑定(编辑页面的数据绑定)的相关文章

Vue局部组件过滤器,首字母大写,表单只能用双向数据绑定,v-model

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" con

Layui 表单赋值 编辑页面赋初值

原文:https://blog.csdn.net/yulongxue/article/details/97924591 //编辑 if (id > 0) { $.post("/Handler/CaseHandler.ashx?type=get", { Id: id }, function (data) { form.val('component-form-group', data); curEntity = data; }); } 原文地址:https://www.cnblogs

Vue.js学习笔记 第七篇 表单控件绑定

本篇主要说明表单控件的数据绑定,这次没有新的知识点 文本框 1.普通文本框 <div id="app-1"> <p><input v-model="textBox" placeholder="输入内容...">输入的内容:{{ textBox }}</p> </div> <script type="text/javascript"> var vm1 = n

Vue.js 基础指令实例讲解(各种数据绑定、表单渲染大总结)——新手入门、高手进阶

Vue.js 是一套构建用户界面的渐进式框架.他自身不是一个全能框架--只聚焦于视图层.因此它非常容易学习,非常容易与其它库或已有项目整合.在与相关工具和支持库一起使用时,Vue.js 也能完美地驱动复杂的单页应用.他是基于AnjularJs 编写的,所以和前者的语法特别相似,却又使用简洁了很多. 那今天,我就给大家详细的说道说道这个 Vue.js ,以下是我们这次详解的目录,朋友们可以根据自己的情况选择性阅读,所有操作均附有代码实现. 1. Vue.js 如何绑定到页面中,使用他的功能. 2.

HTML5实战 文摘 第二章 HTML5用于创建表单的输入小部件 数据绑定以及数据验证

HTML5表单在原有表单特性的基础上增加了一些比较便捷的特性,使得我们实现一些常用的表单的小部件.输入类型.输入验证不再那么大费周章.上一篇文章提到了HTML5实现的几种新的输入类型,现在我们更加详尽的了解HTML5的表单产生的新特性和功能. 1. 输入类型和输入属性 菜鸟教程上给出了HTML5新增加的input输入类型,可以在上面尝试一下不同类型的样子,基本可以满足日常开发需求了.类型不同会照成什么内在差异呢?主要有三点,首先,浏览器会根据输入类型进行基本的数据校验,例如type="email

(三)关于kendo IU表单form各类控件的数据绑定

=====================input textarea============================= <div id="view"> <input data-bind="value: inputValue" /> <textarea data-bind="value: textareaValue"></textarea> </div> <script&g

vue.js基础知识篇(1):简介、数据绑定、指令、计算属性、表单控件绑定和过滤器

目录第一章:vue.js是什么? 代码链接: http://pan.baidu.com/s/1qXCfzRI 密码: 5j79 第一章:vue.js是什么? 1.vue.js是MVVM框架 MVVM的代表框架是Angular.js,以及vue.js. MVVM的view和model是分离的,View的变化会自动更新到ViewModel上,ViewModel的变化会自动同步到View上显示.这种自动同步依赖于ViewModel的属性实现了Observer. 2.它与angular.js的区别 相同

数据绑定和表单标签库

1.数据绑定 在spring MVC中数据绑定有这样基层定义: 绑定请求参数输入值到领域模型 模型数据到视图的绑定 模型数据到表单元素的绑定. 2.表单标签库 表单标签库中包含了可以用在JSP页面中渲染HTML元素的标签. 在JSP页面使用时需要引入如下代码: <%@taglib prefix="form" uri="http://www.springframework.org/tags/form" %> 1.表单标签 2.input标签 3.passw

React 事件对象、键盘事件、表单事件、ref获取dom节点、react实现类似Vue双向数据绑定

1.案例实现代码 import React, { Component } from 'react'; /** * 事件对象.键盘事件.表单事件.ref获取dom节点.react实现类似Vue双向数据绑定 * 事件对象: 在触发DOM上的某个事件时,会产生一个事件对象event,这个对象包含着所有与事件有关的信息 * 表单事件: 获取表单的值 * 1.监听表单的改变事件 ---onChange * 2.在改变的事件里面获取表单输入的值 ---event * 3.把表单输入的值赋值给username