1.登陆相关问题

1.如何在文本框中增加提示信息
             2.如何在文本框中触发回车事件
             3.如何在回车事件中触发按钮的动作
             总结:http://www.cnblogs.com/sdjnzqr/p/3922726.html

2.只读文本框样式设置

参考文章:http://stackoverflow.com/questions/9214297/how-do-i-change-color-of-a-textfield-using-extjs

3.关于查询数据返回的问题

在真正的业务系统中,大部分数据返回时无法返回数据库中对应的实体,一般来说都是几个实体之间的混合属性,这就造成了如果使用MVC架构时,需要在做查询时,创建大量的Model,造成代码的复杂度,因此建议尽量少用Model,有可能的话尽量使用json。

4.Ajax调用的方式

http://blog.csdn.net/hrl_100/article/details/5639922
 
5.全局变量的使用
 
 参考:http://phpcode8.com/web/extjs/extjs-global-variable.html
 
6.form提交时返回的json格式

would process the following server response for a successful submission:
{
"success":true, // note this is Boolean, not string
"msg":"Consignment updated"
}

and the following server response for a failed submission:

{
"success":false, // note this is Boolean, not string
"msg":"You do not have permission to perform this operation"
}
 
7.SpringMVC返回中文String时出现中文乱码
  
   第一种解决方案:
@RequestMapping(value="/sys/functiontree",produces="text/plain;charset=UTF-8")
@ResponseBody
public String getTreeData()

第二种解决方案:通过修改XMl配置文件或者而修改源码来实现。

参考文章:

http://www.oschina.net/question/105887_114629?sort=time

http://blog.csdn.net/kissliux/article/details/14053761

注意:

我使用的是3.1.2的Spring包,在3.1.2版本中通过配置XML无法解决,只能通过修改源码或者继承类的方式实现。

另外:每个版本的StringHttpMessageConverter的实现方式不一样,注意实现方式。

 
 
7.树的相关问题
  参考文章:
     http://www.cnblogs.com/mrye/archive/2013/05/26/3100431.html
     http://ishowshao.com/blog/2012/08/17/extjs-4-trees/
注意事项:
   1.数的来源依赖于Ext.data.TreeStore,所以一定要定好这个数据源。
   2.定义树节点属性时,一定要的定义的是Id,text,leaf,如果要使用其他的字段来代替,比如想通过name来作为树节点的现实内容,则需要通过column来定义。
 
8.Controller中refs属性的理解
 
参考文章:
    http://www.cnblogs.com/liuqxFuture/archive/2012/11/10/2763764.html
    http://czpae86.iteye.com/blog/1181110
 
9.动态加载controller的问题****重点
 
参考文章:http://www.cnblogs.com/servant/archive/2013/04/01/ExtJs4mvc%E5%8A%A8%E6%80%81%E5%8A%A0%E8%BD%BDController.html
注意事项:
   原文中:
    var bhcmsController = application.getController('BHCMSController');
bhcmsController.init(self);
会造成在init方法执行两次会有问题,正确的应该是:
if(!Ext.ClassManager.isCreated('MyExt.controller.qxgl.UserController')){//判断controller是否已经加载;
Ext.require("MyExt.controller.qxgl.UserController", function () {
var userController = app.getController('qxgl.UserController');
app.getController('FirstPageController').addTab(record.get('id'),record.get('text'),'qxgl_userlist','true');
}, self);
}else{
app.getController('FirstPageController').addTab(record.get('id'),record.get('text'),'qxgl_userlist','true');
}
 
 
 
10.Form布局定义的问题
 
参考文章:http://z-xiaofei168.iteye.com/blog/1136291
 
11.关闭tab页报错的问题
 
错误描述:Error: Cannot read property 'addCls' of null
 
原因:http://blog.csdn.net/lc448986375/article/details/8019649
 
12.如何刷新grid的问题
 
http://blog.csdn.net/lc448986375/article/details/8019649
 
13.grid日期列显示的问题
 
通过renderer属性来将后台传过来的数字时间变成Extjs能够接受的时间
            text : '登陆时间',
dataIndex : 'lastLogin',
renderer: function(value){
return Ext.util.Format.date(new Date(1404098883000),'Y-m-d');
}
 

14.DataGird分页的实现

参考文章:http://www.vipaq.com/Article/View/blog/239.html

后台实现时必须的三个参数:page,start,limit

代码实现:

var store = Ext.create('Ext.data.Store', {
id:'simpsonsStore',
autoLoad: false,
fields:[
{ name: 'id', type: 'string' },
{ name: 'userCode', type: 'string' },
{ name: 'loginState', type: 'string' },
{ name: 'lastLogin', type: 'string' },
],
pageSize: 10, // items per page
proxy: {
type: 'ajax',
url: 'test/queryAllUsers.json', // url that will load data with respect to start and limit params
reader: {
type: 'json',
root: 'rows',
totalProperty: 'total'
}
}
});
Ext.create('Ext.grid.Panel', {
title : '查询结果',
region : 'center',
margin : '5 0 0 0',
store: store,
columns : [ {
text : '用户ID',
dataIndex : 'id'
}, {
text : '用户编码',
dataIndex : 'userCode',
flex : 1
}, {
text : '登陆状态',
dataIndex : 'loginState'
}, {
text : '登陆时间',
dataIndex : 'lastLogin',
renderer: function(value){
return Ext.util.Format.date(new Date(1404098883000),'Y-m-d');
}
} ],
dockedItems: [{
xtype: 'pagingtoolbar',
store: store, // same store GridPanel is using
dock: 'bottom',
displayInfo: true
}],
})
//带参数查询
store.on("beforeload",function(){
Ext.apply(store.proxy.extraParams, {userid:button.up('form').down('textfield[name=id]').getValue(),
usercode:button.up('form').down('textfield[name=usercode]').getValue()});
});
//datagrid查询
store.load({
params:{
start:0,
limit: 10,
}
});

ExtjsMVC开发过程中遇到的具体问题总结的更多相关文章

  1. 一些关于angularJS的自己学习和开发过程中遇到的问题及解决办法

    这篇文章也许会不定时更新,主要记录这段时间内自己遇到的angularjs学习开发的一些问题的解决办法.本文以摘抄为主,主要目的还是将自己遇到的困惑在各个地方查到的解决办法的汇总,给自己留个备忘吧. 1 ...

  2. SubSonic3.0 Demo1.0——应用了T4模版可减少开发过程中70%以上的代码量以及80%以上的出错率

    应网友的要求,抽了点时间写了这个Demo,希望对2.2版想升级到3.0的朋友或正在使用3.0的朋友有所帮助.大家在使用Demo过程中如果发现什么问题或有什么建议,可以直接将Bug提交给我或告诉我,我会 ...

  3. web开发过程中经常用到的一些公共方法及操作

    进化成为程序猿也有段岁月了,所谓的经验,广度还是依旧,只不过是对于某种功能有了多种实现方式的想法.每天依旧不厌其烦的敲打着代码,每一行代码的回车似乎都有一种似曾相识的感觉.于是乎:粘贴复制,再粘贴再复 ...

  4. Eclipse开发过程中个VM Arguments的设置

    Eclipse开发过程中个VM Arguments的设置 1:jre中的Default VM Arguments: -Xms256M -Xmx640M -XX:PermSize=256m -XX:Ma ...

  5. 客户关系管理系统(CRM)的开发过程中使用到的开发工具总结

    开发<客户关系管理系统(CRM)>软件过程,也就是一个标准的Winform程序的开发过程,我们可以通过这个典型的软件开发过程来了解目前的开发思路.开发理念,以及一些必要的高效率手段.本篇随 ...

  6. 软件开发过程中的审查 (Review)

    http://blog.csdn.net/horkychen/article/details/5035769 软件开发过程中的审查 (Review)   希望别人做些什么->定义出流程 希望别人 ...

  7. javaweb开发过程中的地址写法

    凡是要表示web资源的地址,比如浏览器地址栏中,都是 /凡是要表示硬盘地址, 都是 \  public class ServletDemo1 extends HttpServlet { //实际开发过 ...

  8. SpringMVC开发过程中的中文乱码问题

    相信大家在开发初期遇到中文乱码问题一定是一头雾水,不是数据库乱码了就是页面乱码了或者传值时乱码.其实解决乱码的途径很简单,就是统一编码与解码的类型,我把自己遇到的乱码问题整理出来,希望能够对大家有用. ...

  9. net开发过程中Bin目录net开发过程中Bin目录下面几种文件

    .net开发过程中Bin目录下面几种文件格式的解释 在.NET开发中,我们经常会在bin目录下面看到这些类型的文件: .pdb..xsd..vshost.exe..exe..exe.config..v ...

随机推荐

  1. kettle教程(1) 简单入门、kettle简单插入与更新。打开kettle

    本文要点:Kettle的建立数据库连接.使用kettle进行简单的全量对比插入更新:kettle会自动对比用户设置的对比字段,若目标表不存在该字段,则新插入该条记录.若存在,则更新.   Kettle ...

  2. PHP计算某个目录大小的方法

    用PHP来计算某个目录大小的方法. PHP CURL session COOKIE  可以调用系统命令,还可以这样:  <?php function dirsize($dir) {  @$dh  ...

  3. php 购物车的例子

    网上搜到的,简单容易理解.cookie存购物车ID,db存购物车数据. //购物车session的产生代码   1 if(! $session && ! $scid) {    2 / ...

  4. linux下关于mysqldump备份的.sql导入数据库表数据丢失优化

    直切正题 前2个随笔做了linux下自动备份,但是备份的.sql文件发现表数据丢失,原因是数据库太大我的数据库文件是804M,在用ftp拉去也会丢失数据 所以对db.sh备份数据库加一个压缩gizp ...

  5. C++求最大公约数

    题目内容:求两个正整数的最大公约数. 输入描述:输入数据含有不多于50对的数据,每对数据由两个正整数(0<n1,n2<232)组成. 输出描述:对于每组数据n1和n2,计算最大公约数,每个 ...

  6. 用jquery循环map

    前些天记录了java中for循环取map,发现用jquery的each一样可以取map(我称之为js的map,不要较劲),且顺序和map中顺序一致.废话少说,看代码 1 2 3 4 5 6 7 8 9 ...

  7. SQL Server中查询结果拼接遇到的小问题

    前天的项目,刚接手,对于模块还不是很熟悉,其中有一个模块,涉及到4个表,其中主要的表就有两个,只要把这个弄清楚了就一切回归于“太平”了. 模块要求:把两个表的内容查询出来,结果连接在一起.大师说完,感 ...

  8. jQuery学习笔记(3)

    children():只考虑子元素而不考虑其他后代元素 <html xmlns="http://www.w3.org/1999/xhtml"> <head run ...

  9. Unity Scripting Tutorials 要点记录

    (搬运自我在SegmentFault的博客) 这几天通过Unity官网的Unity Scripting Tutorials的视频学习Unity脚本,观看的过程中做了记录.现在,整理了一下笔记,供自己以 ...

  10. oracle分区表(整理)

    Oracle 表分区 早在8.0.5版本中,Oracle就将范围分区技术引入,现在分区功能已经越来越强大,包括支持扩展分区功能.Interval分区.外键分区.模拟列分区.以及分区建议器等.那么,分区 ...