首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

formpanel加载后台数据的有关问题

2012-03-09 
formpanel加载后台数据的问题js代码:JScript codeExt.onReady(function(){var myform new Ext.FormPanel

formpanel加载后台数据的问题
js代码:

JScript code
Ext.onReady(function(){    var myform = new Ext.FormPanel({        title:'myform',        el:'myform',        height:400,        width:800,        items:[{            xtype:'textfield',            name:'uname',            fieldLabel:'uname'        }]    });    myform.render();    myform.form.load({        waitTitle : "请稍候",           waitMsg : " 正在加载表单数据,请稍候......",           url : '123.jsp',         success : function(form, action) {              },           failure : function(form, action) {               Ext.MessageBox.alert(' 加载失败', action.result.errors);           }    });});

123.jsp
Java code
String data = "{success:true,data:{ uname:'name'}}" ;        out.print(data);


为什么加载不到数据?

[解决办法]
如果你在123.jsp里添加了html页面的标签,那么在响应客户端请求时产生一个与jsp同构的html页面,它里面除了包含out.print输出的数据外,还有jsp本身的html结构,你用firedebug下,会看到JSON格式不是你想要的格式!
去掉jsp中的html标签即可,这时即产生完整的json格式数据。 
然后使用js中的eval函数,将接收到的json字符串转化为json对象,格式如下(设该字符串是str),
var jsondata = eval('('+str+')'),直接把str作为参数不行

热点排行