extjs form表单绑定数据

问题描述

extjs form表单绑定数据
 Ext.define('taskList' {            extend: 'Ext.data.Model'            fields: [                     { name: 'TASK_ID' type: 'string' }                     { name: 'ITEM' type: 'string' }                     { name: 'INFO' type: 'string' }                     { name: 'MARK' type: 'int' }                     { name: 'EMPID' type: 'string' }                     { name: 'ACCESSORY' type: 'string' }                     { name: 'CLAIM_TIME' type: 'string' }            ]        });            var storeList = Ext.create('Ext.data.Store' {                          model:'taskList'            proxy: {                             type: 'ajax'                url: 'taskList.action?task_id='+task_id                 reader: {                    type: 'json'                    root: 'taskList'                                  }           }                    });            storeList.load();            myFormPanel.getForm().loadRecord(storeList);

这句话有什么问题?为什么文本框就是不显示数据?store里已经有数据了。

 Ext.define('taskList' {            extend: 'Ext.data.Model'            fields: [                     { name: 'TASK_ID' type: 'string' }                     { name: 'ITEM' type: 'string' }                     { name: 'INFO' type: 'string' }                     { name: 'MARK' type: 'int' }                     { name: 'EMPID' type: 'string' }                     { name: 'ACCESSORY' type: 'string' }                     { name: 'CLAIM_TIME' type: 'string' }            ]        });     var userRecord = Ext.create('taskList' {            ITEM: 'Qi Fei'            INFO: 'youring2@gmail.com'             MARK:1             EMPID:'Qi Fei'             ACCESSORY:'Qi Fei'             CLAIM_TIME:'Qi Fei'        });            myFormPanel.getForm().loadRecord(userRecord);

我换成静态的数据就能加载上去

解决方案

loadRecord参数时Ext.data.Model的实力,不是store对象,而且store是异步加载的,数据没返回都已经执行myFormPanel.getForm().loadRecord(userRecord);这句了,

放到store的load事件里面,而且是取里面的记录

             var storeList = Ext.create('Ext.data.Store' {                         load:function(){                        alert(storeList.getCount())//输出有多少条数据                        myFormPanel.getForm().loadRecord(storeList.getAt((0));//加载第一条数据                        }            model:'taskList'            proxy: {                             type: 'ajax'                url: 'taskList.action?task_id='+task_id                 reader: {                    type: 'json'                    root: 'taskList'                                  }           }                    });

http://ask.csdn.net/questions/173921,这个里面不是说得很清楚了。。加载远程数据用load就行。。不需要建立个store来加载。

解决能记得采纳。。

解决方案二:

 storeList.on(""load"" function() {           myFormPanel.getForm().loadRecord(storeList.getAt(0));                    });

确实Form加载完成时没用上store里的数据。把它放在Load里就行了

时间: 2024-08-05 06:40:40

extjs form表单绑定数据的相关文章

js获取form表单所有数据的简单方法_javascript技巧

在HTML中用js获取通过GET.POST方法(就是在网址后加?a=b&c=d之类)传过来的表单值. 针对大家常用的获取表单方式,很多时候都是在重复的写一些代码,今天给大家贴出来的代码可以作为公用方法直接调用.可以提高大家的开发效率. Js代码 <script type="text/javascript"> //获取指定form中的所有的<input>对象 function getElements(formId) { var form = documen

Extjs form 表单添加已有的软键盘控件

问题描述 Extjs form 表单添加已有的软键盘控件 现在那两个输入框都是普通的输入框. 我想换成带 软键盘控件的输入框. 我的软键盘输入框是单独的js. 在页面是只要加入 writeEditObject("safeedit",{"entertype":"edit","width":170,"height":24,"accepts":"[:print:]+",&q

form 表单提交数据小记

form表单传统的提交方式,会跳转页面,需要做处理才行,可以在form上配置提交方式.提交地址,可以用submit.和button提交 <form id="formid" name= "myform" method = 'post' action = 'user_login_submit.action' onsubmit = "return checkUser();" > 其中checkUser返回false为不提交,你可以在chec

ext form 表单提交数据的方法小结_YUI.Ext相关

EXT的form表单ajax提交(默认提交方式)  复制代码 代码如下:  1. function login(item) {    2.    3. if (validatorForm()) {    4. // 登录时将登录按钮设为disabled,防止重复提交    5. this.disabled = true;    6.    7. // 第一个参数可以为submit和load    8. formPanl.form.doAction('submit', {    9.    10.

Extjs Form 表单修改

Extjs修改分两种方法:1.前台直接加载:2.通过后台远程加载 1.直接加载:方法 form.getForm().loadRecord(); 应用时要求页面上已经存在页面中的所有数据,比如选中gridPanel一行,然后直接传递此行记录,到formPanel页面,可直接加载 2.后台加载:方法 form.getForm().load(); 应用时 传递一个参数到后台,然后远程取值,绑定. 实例:       var datasReader = new Ext.data.JsonReader({

textfield-extjs form表单怎么绑定数

问题描述 extjs form表单怎么绑定数 表单里的xtype: 'textfield',怎么绑定store里的数据.或者怎么把后台json数据直接赋值给文本框 解决方案 http://docs.sencha.com/extjs/4.1.3/#!/api/Ext.form.Panel-method-loadRecord 不是有API,调用loadRecord方法就行,建立好模型,然后创建模型对应的记录集后调用方法加载 Ext.define('record', {extend: 'Ext.dat

jquery序列化form表单使用ajax提交后处理返回的json数据

 这篇文章主要介绍了jquery序列化form表单,使用ajax提交后处理返回的json数据的示例,需要的朋友可以参考下 1.返回json字符串:    代码如下: /** 将一个字符串输出到浏览器 */     protected void writeJson(String json) {         PrintWriter pw = null;         try {             servletResponse.setContentType("text/plain;cha

jquery序列化form表单使用ajax提交后处理返回的json数据_jquery

1.返回json字符串: 复制代码 代码如下: /** 将一个字符串输出到浏览器 */     protected void writeJson(String json) {         PrintWriter pw = null;         try {             servletResponse.setContentType("text/plain;charset=UTF-8");             pw = servletResponse.getWrit

jQuery ajax提交Form表单实例(附demo源码)_jquery

本文实例讲述了jQuery ajax提交Form表单的方法.分享给大家供大家参考,具体如下: Jquery的$.ajax方法可以实现ajax调用,要设置url,post,参数等. 如果要提交现有Form需要写很多代码,何不直接将Form的提交直接转移到ajax中呢. 以前的处理方法 如Form代码如下: <form id="Form1" action="action.aspx" method="post" > 名称:<input