this.combo.onRender(ct, position);
// assigned so form know we need to do this..
- this.store = this.combo.store;
+ this.store = this.combo.store;
+ this.valueField = this.combo.valueField;
+ this.displayField = this.combo.displayField ;
this.combo.wrap.addClass('x-cbarray-grp');
setValue: function(v) // not a valid action - must use addItems..
{
- Roo.log(v);
- Roo.log(this.hiddenEl.dom.value);
- Roo.log(this.el.dom.value);
- var _this = this;
- Roo.each(v, function(l) {
- _this.addItem(l);
- });
+ if (this.store.isLocal) {
+ // then we can use the store to find the values..
+ // comma seperated at present.. this needs to allow JSON based encoding..
+ this.hiddenField.setValue(v);
+ var v_ar = [];
+ Roo.each(v.split(','), function(k) {
+ var li = this.store.query(this.store.valueField, k);
+ if (!li.length) {
+ return;
+ }
+ add = {};
+ add[this.store.valueField] = k;
+ add[this.store.displayField] = li.item(0).data[this.store.displayField];
+
+ this.addItem(add);
+ }, this)
+
+
+
+ }
+
},
+ setFromData: function(v)
+ {
+ Roo.log(v);
+
+
+ },
+
+
validateValue : function(value){
return Roo.form.ComboBoxArray.superclass.validateValue.call(this, this.getValue());