Form表单数据自动填充的问题

问题描述

应用很简单明了,就是将一个需要修改的员工信息传递到一个页面然后自动把已存在的数据填写到合适的位置,然后供人修改问题:后台数据可以得到,可是无法将数据绑定到指定控件上代码如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>MyExtFullForm.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="this is my page"> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <!--<link rel="stylesheet" type="text/css" href="./styles.css">--> <!-- Ext显示必须链接,前后顺序不能颠倒 --> <link rel="stylesheet" href="resources/css/ext-all.css" type="text/css"></link> <script type="text/javascript" src="ext-base.js"></script> <script type="text/javascript" src="ext-all.js"></script> <script type="text/javascript" src="ext-lang-zh_CN.js"></script> <!-- End --> <script> Ext.onReady(function(){ var reader = new Ext.data.JsonReader({ successProperty : 'success', root : 'data' }, [{ name : 'name', type : 'String', mapping : 'name' }, { name : 'address', type : 'String', mapping : 'address' }, { name : 'loves', type : 'int', mapping : 'loves' }, { name : 'memo', type : 'String', mapping : 'memo' }]); var form = new Ext.form.FormPanel({ labelAlign:'right', labelWidth:60, title:'我的表单', frame:true, width:650, url:'form.jsp', items:[{ layout:'column', items:[{ columnWidth:.5, layout:'form', defaultType:'textfield', xtype:'fieldset', title:'姓名', autoHeight:true, items:[{ fieldLabel: '姓名', name:'name', value:reader.get('name') },{ fieldLabel: '地址', name:'address', value:reader.get('address') }] },{ columnWidth:.5, layout:'form', defaultType:'checkbox', xtype:'fieldset', title:'住址', style:'margin-left:20px;', autoHeight:true, items:[{ fieldLabel: '足球', inputValue:'1', name:'loves' },{ fieldLabel: 'DIY', inputValue:'2', name:'loves' },{ fieldLabel: '睡觉', inputValue:'3', name:'loves' },{ xtype:'panel',html:'<center><img src="icon-info.gif"/></center>' }] }] },{ xtype:'fieldset', title:'个人介绍', autoHeight:true, items:[{ width:545, xtype:'textarea', name:'memo', fieldLabel:'个人介绍' }] }], buttons:[{ text:'提交', handler:function(){ form.getForm().submit(); } },{ text:'读取', handler:function(){ form.getForm().load({url:'Ds/Form.txt'}); Ext.MessageBox.alert('Msg',reader) } }] }); form.render("form"); }) </script> </head> <body> <div id="form"></div> </body></html>======================================================================== 我的后台Form.txt内容为{success:true,data:[{ name:'Rooney', address:'Mu', loves:2, memo:'Tank' }]}=======================================================================请大家帮我看看还有两个问题,1.多选框如果取到选中值2.表单提交的时候可不可以先把所有控件的值封装成json格式的数组然后传走呢?Form表单数据自动填充

解决方案

这样写吧this.form.on('render', function() { this.form.load({ url : '***'params : { id : this.recordId} });}, this);在render时去取数据,返回的格式还是一样.1.多选框request.getParameterValues('**');取2.提交表单到后台用request.getParameter('**');去取,如果想用json,只有在前台先取出表单值,再拼成json格式用ajax传到后台,但不好,不如直接提交表单
解决方案二:
你没有必要在外面用reader..然后在form里value:reader.get('address') formpanel里面..是有一个reader的属性的...你可以在formpanel里面写..然后form.load就可以了..片段form里的reader:reader : new Ext.data.JsonReader( {totalProperty : 'totalProperty',root : 'root'},[{name : 'name'},{name : 'id'},{name : 'loginName'},{name : 'passwd'}]),最后form.load下.form.getForm().load({url : '***',params :{id : recordId}});

时间: 2024-09-20 20:11:02

Form表单数据自动填充的问题的相关文章

有关servlet获取form表单数据的异步刷新问题

问题描述 有关servlet获取form表单数据的异步刷新问题 servlet如何实现从form表单获取数据条件是异步提交的方式,有大神发个简单的小例子小弟感激不禁!!谢谢了 解决方案 可以用ajax异步请求,jquery插件提供了ajax的实现.异步提交可以通过js来提交,而不是表单按钮提交,提交路径就是某个Servlet.参考:http://blog.csdn.net/bravezhe/article/details/8249889

Jquery判断form表单数据是否变化_jquery

本文实例为大家分享了Jquery判断form表单数据是否变化的三大步骤,供大家参考,具体内容如下 1.思路为:修改时点击一行datagrid,并进行页面跳转数据绑定,在提交form时,序列号form表单,并重新获取datagrid选中的行数据,进行数据比较.</span>  /** * 判断form内属性值是否被修改 * * @param jsonForm 对应修改的form序列化后的json数据 * @param row 对应datagrid选中的数据源 * * @Return true 存

Java 中 Form表单数据的两种提交方式_java

1 GET - 从指定的服务器中获取数据 1.1 GET方法 使用GET方法时,查询字符串(键值对)被附加在URL地址后面一起发送到服务器,例如:http://localhost:8080//customer/customer_info?res=json&mt=0&custId=1 1.2 特点 (1) GET请求能够被缓存 (2) GET请求会保存在浏览器的浏览记录中 (3) 以GET请求的URL能够保存为浏览器书签 (4) GET请求有长度限制(不能多于1024字节) (5) GET请

php tp验证表单与自动填充函数代码_php技巧

复制代码 代码如下: <?php class FormModel extends Model { // 自动验证设置 /* * 一:自动验证 自动验证的定义是这样的:array(field,rule,message,condition,type,when,params) field:代表是数据库的字段名: rule:代表是规则: 它的值要看type的类型而定: 如果是condition 是function(callback),rule是一个函数名 condition 是in,rule是一个数组

MVC4的表单回传自动填充

问题描述 ORM框架是用的SubSonic3.0提交的表单中含有多个模型模型中有相同字段名如何让他提交表单回传至CONTROLer中时自动填充到一个整合模型中!

form表单数据的自动采集的js方法

  说到form数据的自动采集, 大家一定会想到用struts, 又或者ext的相关功能,   而我在一个项目中,遇到一种情况,需要通过jquery的ajax的方式提交表单, 所以我需要把表单中的数据,自动采集然后放入ajax的参数列表中. 下面给出自己写的这段js,原理很简单,希望对大家有所帮助: function getFormParaList() {    var items =document.forms[0].elements;  var map={};  if(items)  {  

chrome表单自动填充导致input文本框背景变成偏黄色问题解决

chrome表单自动填充后,input文本框的背景会变成偏黄色的,这是由于chrome会默认给自动填充的input表单加上input:-webkit-autofill私有属性,然后对其赋予以下样式:   复制代码 代码如下: input:-webkit-autofill { background-color: #FAFFBD; background-image: none; color: #000; } 在有些情况下,这个黄色的背景会影响到我们界面的效果,尤其是在我们给input文本框使用图片背

JSP 重置按钮清空传入的表单数据实例_JSP编程

参考: jquery 表单 清空 $(':input','#myform') .not(':button, :submit, :reset, :hidden') .val('') .removeAttr('checked') .removeAttr('selected'); 这个js是可以实现清空表单中填写及传入的值的,但要注意: 1.jq实现,此<input />不能放在form表单内!: 2.直接写在onclick属性中即可 以上是小编为您精心准备的的内容,在的博客.问答.公众号.人物.课

ASP.NET中实现Form表单字段值自动填充到操作模型中

  这篇文章主要介绍了ASP.NET中实现Form表单字段值自动填充到操作模型中,本文模仿MVC模式中的自动映射表单了模型,使用泛型和反射实现,需要的朋友可以参考下 我们知道ASP.NET MVC有个强大的地方就是Form表单提交到action的时候,可以直接将Form的参数直接装配到action的参数实体对象中 比如 代码如下: action方法 Register(UserModel userModel) { ............................. } 在提交表单的时候,会