Extjs 下拉框问题(在线等)

dt510_123 2011-08-15 11:23:31
下拉框有3个选择,保存到数据库时是保存的序号1,2,3
现在从数据库取出来时也是序号1,2,3了。想换成值该怎样转换呢?
...全文
282 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
班门弄斧 2011-08-16
  • 打赏
  • 举报
回复
给你个例子

//定义一个store
var BalanceTypeStore = new Ext.data.Store({
proxy:new Ext.data.HttpProxy({url:"CntNormalBrowse.aspx?param=BalanceType"}),
reader:new Ext.data.JsonReader({fields:["balance_type","balance_name"],root:'data'})
});
BalanceTypeStore.load();
//定义一个下拉列表
{
name:'contract_type',
fieldLabel:'结算方式',
xtype:"combo",
store:BalanceTypeStore,
allowBlank:false,
mode:"local",
displayField:"balance_name",
valueField:"balance_type",
forceSelection:true,
emptyText:"请选择类型",
blankText:"类型不允许为空",
editable:false,
typeAhead:true,
selectOnFocus:false,
triggerAction:"all",
allowBlank:false,
anchor:"95%"
}
dt510_123 2011-08-15
  • 打赏
  • 举报
回复
[Quote=引用楼主 dt510_123 的回复:]
下拉框有3个选择,保存到数据库时是保存的序号1,2,3
现在从数据库取出来时也是序号1,2,3了。想换成值该怎样转换呢?
[/Quote]
取值是根据存到数据库的序号1,2,3而对应找到value的吧
jmx123456789 2011-08-15
  • 打赏
  • 举报
回复
Ext.getCmp("combo").setValue(1/2/3);
dt510_123 2011-08-15
  • 打赏
  • 举报
回复
是的呀,好像得在后台先保存上吧
班门弄斧 2011-08-15
  • 打赏
  • 举报
回复
无论是后台数据库到前端界面,还是前端界面到后台数据库,传递的总是1、2、3,而显示的都是对应的字典值,是这样的吗?
班门弄斧 2011-08-15
  • 打赏
  • 举报
回复
楼主的意思是?
1,2,3仅仅是编号,实际界面显示的是对应字典的值
dt510_123 2011-08-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 fanchuanzhidu 的回复:]

你的ComboBox不是有displayField和valueField么 你的store定义改改
var store = new Ext.data.SimpleStore({
fields : ['数据库id', '数据库value'],
data : ...,
reader : ...
……
[/Quote]
取值时候的页面不是在同一个页面的
豆虫 2011-08-15
  • 打赏
  • 举报
回复
你的ComboBox不是有displayField和valueField么 你的store定义改改
var store = new Ext.data.SimpleStore({
fields : ['数据库id', '数据库value'],
data : ...,
reader : ...
})

然后ComboBox中displayField:'数据库value',valueField:'数据库id'
这样getValue得到的就是数据库id getRawValue就是数据库value

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧