Iveyyyy 2010-07-06 11:30
浏览 234
已采纳

关于Ext combo key 验证问题 谢谢大家了

//问题说明:以下代码可以正常完成工作,combo,没有设置disabled:true,
//对combo也做了非空验证,只要选择了下拉值,就可以根据,combo.getRawValue()方法来得到显示的值,combo.getValue()得到key的值
//问题在于:如果用户没有选择下拉的值,直接输入了一个值,列如:'TEST'哪么,
//key字段值就会变成displayField的字段值,
//不管是获取combo.getRawValue(),combo.getValue() 都是TEST,
//但在数据库要求是key值进行保存,要怎样才能判断key valueField是不是为空....
//而我要传到后台的是combo.getValue()的key值,
//个人思路:1.如果可以验证key值那嘛就提示用户要选择才可以提交,,但不知道怎能验证key
///////////2.重新在根据显示值查询一次,显然是浪费时间,,,,,谢谢大家了
var store = new Ext.data.Store({
    proxy:new Ext.data.HttpProxy({url:'../JSON/eamsDepotSvr.getEamsDepot'}),//请求Seam注解方法
    baseParams:{
        label:''//查询所有数据,所以设参数为空
    },
    reader:new Ext.data.JsonReader( {
        root: 'results',
        totalProperty:'totalProperty'   
    }),
    ['depotName','id']
});
var combo = new Ext.form.ComboBox({
    id:'test',
    name:'test',
    valueField:'id',//key字段
    displayField:'depotName',//显示字段
    store:store,
    triggerAction:'all',
    mode:'remote',
    fieldLabel:'TEST'
})
//回车事件
combo.no('soecuakkey',function(){
    var str = combo.getRawValue();//获取一个从combo输入的值.根据些值在数据库模糊查询
    store.baseParams = {
        label:  str
    }
    store.load({params:{start:0,limit:5}}) //加载数据并保存分页
})
  • 写回答

2条回答 默认 最新

  • upup1000 2010-07-06 23:55
    关注

    加上

    forceSelection : true

    试试呢

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 找一个网络防御专家,外包的
  • ¥100 能不能让两张不同的图片md5值一样,(有尝)
  • ¥15 informer代码训练自己的数据集,改参数怎么改
  • ¥15 请看一下,学校实验要求,我需要具体代码
  • ¥50 pc微信3.6.0.18不能登陆 有偿解决问题
  • ¥20 MATLAB绘制两隐函数曲面的交线
  • ¥15 求TYPCE母转母转接头24PIN线路板图
  • ¥100 国外网络搭建,有偿交流
  • ¥15 高价求中通快递查询接口
  • ¥15 解决一个加好友限制问题 或者有好的方案