ExtJs实践:支持返回Json格式的ComboBox
2009-09-09 00:00:00 来源:WEB开发网同时也要对FormPanel进行如下改造,同样增加一个是否是Json格式的属性和一个获取表单Json格式字符串的方法:
JsonForm = Ext.extend(Ext.form.FormPanel, {
isJsonFormat: true,
getJsonString: function() {
var f = this;
var values = f.form.getValues();
if (this.isJsonFormat === true) {
f.items.each(function(c) {
if (c.isJsonFormat === true) {
values[c.getName()] = c.getJson();
}
}, f);
}
var data = Ext.util.JSON.encode(values);
return data;
}
});
使用方法如下,注意,JsonCombobox只需要定义一个Name属性就可以了:
Ext.onReady(function() {
Ext.QuickTips.init();
var store = new Ext.data.ArrayStore({
fields: ['Id', 'Name'],
data: [['1', '产品分类一'], ['2', '产品分类二']]
});
var form = new JsonForm({
labelWidth: 75,
frame: true,
title: 'JsonComboBox',
bodyStyle: 'padding:5px 5px 0',
width: 350,
defaults: { width: 230 },
defaultType: 'textfield',
items: [
{ fieldLabel: '产品Id',
name: 'Id'
}, { fieldLabel: '产品名称',
name: 'Name'
}, new JsonComboBox({
fieldLabel: '产品分类',
name: 'Category',
store: store,
displayField: 'Name',
mode: 'local',
valueField: 'Id'
})
],
buttons: [{
text: '保存',
handler: function() {
var values = form.getJsonString();
alert(values);
}
}
]
});
form.render(document.body);
});
看看字符串是不是我们需要的格式:
图片看不清楚?请点击这里查看原图(大图)。
- ››ExtJs Grid 合计 [Ext | GridPanel | GridSummary...
- ››ExtJS中如何扩展自定义的类
- ››支持 Symbian 平台的开发者只有四分之一
- ››支持电骡视频点播 迅雷泛播放体验
- ››支持Win 7 Vista 不开迅雷接管高速下载
- ››支持换肤功能的窗口实例
- ››支持iPhone的免费VPN:VPN98
- ››支持PDF阅读!美图看看新版试用
- ››支持Windows CE和Android 2.1双系统的Viliv Prime...
- ››支持Flash Windows Mobile 手机全功能浏览器
- ››Extjs列表详细信息窗口新建后自动加载解决方法
- ››支持 Wi-Fi MOTO 第9款 Android 手机ME508曝光
赞助商链接