Categories | Question details Back To List | ||
dhtmlxCombo, big unicode datasets Im using dhtmlxCombo with big unicode datasets (it means From dynamic XML source, with auto sub-load) it works Properly but the filtering and Autocomplete did not work. I must press a ascii character for example space or right or left arrow key till it work. any suggestion Please? Answer posted by Support on Jul 08, 2008 02:22 Combo uses onkeyup event to monitor changes in input. If such event was generated and pressed key is not an "enter" or "backspace" - the combo will filter self. If you are using some non default text entering method - it possible that onkeup event is not generated. The filtering can be triggered manually , by calling combo.filterSelf(); Answer posted on Jul 08, 2008 02:34 Yes I know it uses onkeyup event, it works properly fro english text for example (a, b , c or d) but when Im wirting some non-english right to left text for example farsi characters like (م، ص، آ or ژ) it's apear the combo do not filter it self Automaticly! >If you are using some non default text entering method Thank you so much for your kind support Mohammad
Answer posted by Support on Jul 08, 2008 02:47 >>what do you mean non defaul text enetering? Im using normal keyboard to type texts! Browser support some special input ways for complex languages , which may generate events slightly different. You can try to add custom event handler to combo and force updates on keypressing dhtmlxEvent(combo.DOMelem_input,"keypress",function(){ combo.filterSelf(); }); Answer posted on Jul 08, 2008 04:49 Im tested on IE 7.0.6000.16681 Everything works properly So How can I force update when cant grab the keypress event!?
Answer posted by Support on Jul 08, 2008 08:25 >>So How can I force update when cant grab the keypress event!? Whilt it is a pretty rough solution, you can try next var old=""; window.setInterval(function(){ var text = combo.getComboText(); if (text!=old) combo.filterSelf(); old=text; },500); With such aproach code will check value of combo twice per second and if it was changed - it will force filtering. Answer posted on Jul 09, 2008 03:14 Since now I found: this.DOMelem_input.onkeydown did not grab so _onKey function which call _onKeyB which calls selfFilter did not called! merged _onKeyF and and _onKey functions and comment this line//this.DOMelem_input.onkeydown = this._onKey; now everything works properly in all the bowser which i called... What's your Idea? Mohammad Answer posted by Support on Jul 09, 2008 03:41 The existing key events separation was implemented in such way to process tab-key correctly ( in some browser it may be catched only from onkeydown event ) The update itself is safe and must not cause any side effects. We will investigate situation more closely and may be change the way of key events binding in next version of dhtmlxCombo, to prevent such problems. |