EXT combo setValue ,给combo 设默认值,常见诡秘问题

(function(tar_field,value){
            tar_field.getStore().on('load',function(){
        tar_field.setValue(value);
            });

})(tar_field,value);


我是这样解决的

(tar_field 是个combo)

一般来说

tar_field.getStore().on('load',function(){
        tar_field.setValue(value);
});

这样就可以解决的

但是也有时候会有一个很隐蔽的问题

tar_field

value

有可能会被后边的代码改掉,因为你的这个是回调的只会在,会在未来执行,当时的tar_field 和 value 很有可能被串改了,导致你发现怎么也设置不进去的感觉

这里我使用闭包解决

闭包 参考

http://blog.csdn.net/nx8823520/article/details/6858126



======================================================

除此之外

还有可能combo setValue 不成功的原因是

你的combo的store 是 autoLoad = true ,在你 load一次 setValue后,combo 会再load一次 ,如果自动load的那一次的结果集合中没有你setValue的值,

那么你的combo看起来会是空的,setValue无效

你可能感兴趣的:(EXT combo setValue ,给combo 设默认值,常见诡秘问题)