DHTMLX 3.0 to 4.6 - combo null

Hello,

My application work fine with DHTMLX 3.0 (IE8), but in DHTMLX 4.0 (to use IE11) almost of combo aren’t correctly initialized and generate the error “Impossible to obtain the property zzz of a null or not define reference” when a “document.getElementById” is used.

Do you know how to correct this ?

More information: there is form tag (<form …>…) but no dhtmlXForm.

The combo that does not work use additions in dhtmlxcombo.js :

[code]dhtmlXCombo.prototype.setFocus = function () {
this.DOMelem_input.focus();
};

dhtmlXCombo.prototype.setId = function (newid) {
this.DOMlist.id = newid;
};

dhtmlXCombo.prototype.getId = function () {
return this.DOMlist.id.replace("_object","");
};

dhtmlXCombo.prototype.getIdObject = function () {
return this.DOMlist.id;
};

dhtmlXCombo.prototype.getNumber = function(name){
return this.DOMlist.id.replace("_object","").replace(name,"");
};

dhtmlXCombo.prototype.getComboText = function () {
return this.DOMelem_input.value;
};

dhtmlXCombo.prototype.setComboText = function (a) {
this.DOMelem_input.value = a;
};

dhtmlXCombo.prototype.setHiddenComboText = function (a) {
this.DOMelem_hidden_input.value = a;
};
[/code]

Hi

DOMelem_input, DOMlist are deprecated in 4.0, you posted old combo code.

var comboCodeDA1 = new dhtmlXCombo("liste_das_saisie_1", "liste_das_saisie_1", 100); alert ('getNumber = '+comboCodeDA1.getNumber('liste_das_saisie_'));
In V4.6, getNumber return ‘’; in V3.0, getNumber return ‘1’.

Looks like custom code.

Yes, we added code in dhtmlxcombo.js in V3.0 and then, in V4.6:

dhtmlXCombo.prototype.getNumber = function(name){ return this.DOMlist.id.replace("_object","").replace(name,""); }; // and others

In the program:

var comboCodeDA1 = new dhtmlXCombo("liste_das_saisie_1", "liste_das_saisie_1", 100); alert ('getNumber = '+comboCodeDA1.getNumber('liste_das_saisie_'));
In V4.6, getNumber return ‘’; in V3.0, getNumber return ‘1’.
it’s the same thing by replacing DOMlist by getList.

When I replace

return this.DOMlist.id.replace("_object","").replace(name,"");

by

return this.DOMlist.id;

the V4.6, getNumber return ‘’; and the V3.0, getNumber return ‘liste_das_saisie_1’.

Why DOMlist.id return the id in V3.0 but nothing in V4.6?
What should we use to get the id in V4.6?