1. #621
    Sencha User
    Join Date
    Apr 2012
    Posts
    9
    Vote Rating
    0
    ldashevskiy is on a distinguished road

      0  

    Default


    epoks, could you, please, explain, how to use your "overwrite"?

    Why do you say that it is PHP code, when in actuality it is JavaScript code, no? Or am I misunderstanding something?

    Oh, yes, and does it at all work with Ext 3.4?

    Thanks.

  2. #622
    Sencha User
    Join Date
    Oct 2007
    Location
    Berlin, Germany
    Posts
    889
    Vote Rating
    9
    wm003 will become famous soon enough

      0  

    Default


    if you add

    PHP Code:
    ,assertValue Ext.emptyFn 
    it works under all Ext.Versions up to 3.4.x

    Without that it would only work up to Ext 3.1.1

  3. #623
    Sencha User
    Join Date
    Apr 2012
    Posts
    9
    Vote Rating
    0
    ldashevskiy is on a distinguished road

      0  

    Default


    Thanks, wm003.

    I ended up finding a working soluation and it has the following override:

    assertValue:function() {
    this.list.hide();
    var rv = this.getRawValue();
    var rva = rv.split(new RegExp(RegExp.escape(this.separator) + ' *'));
    var va = [];
    var snapshot = this.store.snapshot || this.store.data;


    // iterate through raw values and records and check/uncheck items
    Ext.each(rva, function(v) {
    snapshot.each(function(r) {
    if(v === r.get(this.displayField)) {
    va.push(r.get(this.valueField));
    }
    }, this);
    }, this);
    this.setValue(va.join(this.separator));
    this.store.clearFilter();
    }

    though, this is a slightly customized LovCombo...

  4. #624
    Sencha User
    Join Date
    Jan 2013
    Posts
    2
    Vote Rating
    0
    yerman is on a distinguished road

      0  

    Default


    Thank you mholyszko,

    Your fix was very useful for me!

  5. #625
    Sencha User
    Join Date
    Jun 2013
    Posts
    1
    Vote Rating
    0
    kwyc is on a distinguished road

      0  

    Default LovCombo works in form but not in grid column

    LovCombo works in form but not in grid column


    I have implemented LovCombo and it works in Form but not in Grid Column

    For the LovCombo on the Form, on thing I have to change for the "onRealBlur" event is to use "this.getValue();" instead of "this.getRawValue();"
    "this.setValue(rv);" rather than "this.setValue(va.join(this.separator));"
    in order for the selected LovCombo values to be displayed after blurring out of the event.

    However now I run into a problem =( ....the LovCombo doesn't work on the Grid Column

    When I tried to reuse the LoveCombo within a grid, I can select multiple values alright within the LovCombo, but when I leave the focus (blurred out) the values disappear from the dropdown display, showing empty. When I try to select 1 value instead of multiple values, the dropdown does display that 1 value. When I try to select multiple values again, the dropdown is emptied upon blurring out. (see attached screenshots)

    I noticed that when I selected multiple values, Grid Cell events doesn't get hit. The Grid Cell events only get hit when I selected 1 value.

    Anyone knows how to fix this?

    Thanks!
    lovcombo.png

    ============ Overried onRealBlur function ============
    , onRealBlur: function() {
    this.list.hide();
    var rv = this.getValue();
    var rva = rv.split(new RegExp(RegExp.escape(this.separator) + ' *'));
    var va = [];
    var snapshot = this.store.snapshot || this.store.data;
    // iterate through raw values and records and check/uncheck items
    Ext.each(rva, function(v) {
    snapshot.each(function(r) {
    if (v === r.get(this.displayField)) {
    va.push(r.get(this.valueField));
    }
    }, this);
    }, this);
    this.setValue(rv);
    this.store.clearFilter();
    } // eo function onRealBlur



    ============ Grid ============

    buildColumnModel: function() {
    ...
    var comboEmployeeTax = new TaxComboBox();
    // load the tax combobox list
    comboEmployeeTax.getStore().load({ params: { ListType: 'GetTaxes'} });
    ...
    var colModel = new Ext.grid.ColumnModel({
    columns: [
    sm,
    ...
    { header: '<font class="mandatorylabel">Tax</font>&nbsp;<font class="redlabel">*</font>', width: 80, sortable: true, renderer: this.renderCombo(comboEmployeeTax), dataIndex: 'TaxID', editor: comboEmployeeTax
    })
    }
    ]
    });
    return colModel;
    }, //eo buildColumnModel function



    ============ renderCombo ============
    renderCombo: function(combo) {
    return function(value, params, record, rowIndex, colIndex) {
    var comboRecord = combo.findRecord(combo.valueField, value);
    ...
    else if (combo.getXType() == 'taxcombobox') {
    if (comboRecord == null) {
    return record.get('TaxDescription');
    }
    else {
    return comboRecord ? comboRecord.get(combo.displayField) : combo.valueNotFoundText;
    }
    }
    ...
    }
    }, // eo function renderCombo

  6. #626
    Sencha User razvanioan's Avatar
    Join Date
    Feb 2008
    Location
    Romania
    Posts
    74
    Vote Rating
    1
    razvanioan is on a distinguished road

      0  

    Default


    Although this is an old UX, I want to confirm that it is still useful / working (using ext-3.4.1.1).

    The only thing I needed to tweak around (as I use it with a remote JsonStore) was that on loading some data of the record trough AJAX into the form, because the values of the lovCombo were loading automatically on this event and it was displayed correctly, the values were not selected (displayed as selected) in the combo.

    The only thing I've done was to add the following code in the onLoad method of the combo:

    Code:
    if(this.getValue()){
    	this.setValue(this.getValue());
    }
    ---
    Razvan Ioan ANASTASESCU

    Senior WEB Developer

  7. #627
    Sencha User razvanioan's Avatar
    Join Date
    Feb 2008
    Location
    Romania
    Posts
    74
    Vote Rating
    1
    razvanioan is on a distinguished road

      0  

    Default


    I've found another issue which bothered me quite some time until I tracked it down...

    onLoad of the combo's store, originalValue is deleted / lost.

    This was causing blank / empty values in lovCombo whenever the JsonStore got loaded after the form load operation succeeded.

    This was happening only sometimes, because of the response time of the async server calls: load / populate combo & load / populate form

    For the moment I tweaked it a little more complicated using the two load listeners (form & combo store), but I will try to figure it out tomorrow how to resolve it in some more fashion way (now I'm tired).

    Thx,
    ---
    Razvan Ioan ANASTASESCU

    Senior WEB Developer

Thread Participants: 195

  1. galdaka (2 Posts)
  2. Dumbledore (8 Posts)
  3. nassaja-rus (2 Posts)
  4. mystix (4 Posts)
  5. fabrizim (1 Post)
  6. sdrew (1 Post)
  7. x5150 (4 Posts)
  8. exo (1 Post)
  9. JorisA (2 Posts)
  10. rarerules (2 Posts)
  11. Darklight (2 Posts)
  12. RhythmFighter (2 Posts)
  13. hui2008 (9 Posts)
  14. ntulip (1 Post)
  15. tobiu (3 Posts)
  16. cmendez21 (1 Post)
  17. steffenk (4 Posts)
  18. zapatista (2 Posts)
  19. george.antoniadis (1 Post)
  20. vlados (3 Posts)
  21. Alcoholov (1 Post)
  22. vibez (1 Post)
  23. dclaussen (1 Post)
  24. stefan.riedel-seifert (1 Post)
  25. nkohari (1 Post)
  26. vishalg (3 Posts)
  27. paparent (3 Posts)
  28. cnelissen (1 Post)
  29. wm003 (2 Posts)
  30. wvuong (3 Posts)
  31. SxOrpheus (5 Posts)
  32. mabello (21 Posts)
  33. sean.zhou (1 Post)
  34. kerbo (2 Posts)
  35. bendawg (2 Posts)
  36. sigaref (3 Posts)
  37. syscobra (1 Post)
  38. mankz (2 Posts)
  39. Sesshomurai (2 Posts)
  40. cblin (1 Post)
  41. smagen (1 Post)
  42. muh-die-kuh (2 Posts)
  43. Zolcsi (1 Post)
  44. evanc (1 Post)
  45. graveyardfashions (2 Posts)
  46. tarini (2 Posts)
  47. franck34 (1 Post)
  48. angelflaree (1 Post)
  49. BuckBazooka (2 Posts)
  50. skbach (5 Posts)
  51. jarnix (1 Post)
  52. ry.extjs (3 Posts)
  53. savva (1 Post)
  54. spiderman123 (1 Post)
  55. razvanioan (2 Posts)
  56. EasyEl (3 Posts)
  57. salvo (5 Posts)
  58. hpet (1 Post)
  59. futurezhang (4 Posts)
  60. chalu (6 Posts)
  61. Maharshi (4 Posts)
  62. siebertm (1 Post)
  63. TwystNeko (1 Post)
  64. dotchris (4 Posts)
  65. brenda (1 Post)
  66. mholyszko (3 Posts)
  67. bt_bruno (2 Posts)
  68. codeminer (1 Post)
  69. dgms (1 Post)
  70. cojas99 (1 Post)
  71. epoks (1 Post)
  72. shay2501 (1 Post)
  73. Remy (3 Posts)
  74. johnathanhebert (3 Posts)
  75. malord (1 Post)
  76. nescha (3 Posts)
  77. dxi (2 Posts)
  78. Efex (3 Posts)
  79. rails_user (1 Post)
  80. nebbian (6 Posts)
  81. evelynloo (2 Posts)
  82. nitznitz (1 Post)
  83. VictorSmirnov (1 Post)
  84. astagl (1 Post)
  85. supercharge2 (2 Posts)
  86. 7twenty (1 Post)
  87. mbajema (2 Posts)
  88. mthad (4 Posts)
  89. s4brown (1 Post)
  90. tripkos (2 Posts)
  91. cmaster (1 Post)
  92. hallow (1 Post)
  93. chiefclaudio (2 Posts)
  94. stive (2 Posts)
  95. Rothariger (7 Posts)
  96. ajatib (1 Post)
  97. freddd (2 Posts)
  98. kagupta@quark.com (2 Posts)
  99. Jack9 (6 Posts)
  100. jingyang (1 Post)
  101. lionheart33806 (3 Posts)
  102. proximus121 (3 Posts)
  103. Achim74 (2 Posts)
  104. foxmarco (1 Post)
  105. frank_ash (1 Post)
  106. wolverline (2 Posts)
  107. amnesia7 (1 Post)
  108. DoS (7 Posts)
  109. zeke (2 Posts)
  110. atian25 (1 Post)
  111. lakshmi (1 Post)
  112. anjuprema00 (1 Post)
  113. oliverseitz (2 Posts)
  114. olriche38 (3 Posts)
  115. Zack7 (2 Posts)
  116. dizor (1 Post)
  117. malstroem (1 Post)
  118. Stju (1 Post)
  119. kora.kanchan (4 Posts)
  120. whodat (7 Posts)
  121. minusForty (2 Posts)
  122. Seatle83 (1 Post)
  123. chelflores (1 Post)
  124. j_mmontero (1 Post)
  125. dbassett74 (1 Post)
  126. Gjslick (1 Post)
  127. eufire (4 Posts)
  128. salihgedik (1 Post)
  129. asnem (2 Posts)
  130. casbar (4 Posts)
  131. jack sparrow (1 Post)
  132. sajjan (3 Posts)
  133. bergstyle (1 Post)
  134. zyon (3 Posts)
  135. anaju (3 Posts)
  136. Smeraldo (2 Posts)
  137. gomby (1 Post)
  138. vivitron (5 Posts)
  139. Andreas B. (1 Post)
  140. wolfhowlmedia (2 Posts)
  141. Gadbury (1 Post)
  142. Thomas Triplet (5 Posts)
  143. Gonfi (1 Post)
  144. walta (3 Posts)
  145. Gustavo Silva (2 Posts)
  146. heavywave (1 Post)
  147. xjpmauricio (2 Posts)
  148. gtegos (1 Post)
  149. Rotterdam (2 Posts)
  150. chullan (1 Post)
  151. Ajithamani (1 Post)
  152. frederickd (1 Post)
  153. hazimdikenli (1 Post)
  154. completej (1 Post)
  155. harel (4 Posts)
  156. fitzkarraldo (1 Post)
  157. idmsch (3 Posts)
  158. headshredder (2 Posts)
  159. vikasj (2 Posts)
  160. cbhawk89 (1 Post)
  161. taronja (3 Posts)
  162. Keith Chadwick (1 Post)
  163. brainunit (2 Posts)
  164. milestonebass (1 Post)
  165. pankajsharma (3 Posts)
  166. devtig (2 Posts)
  167. fff398 (1 Post)
  168. Jensen (7 Posts)
  169. f0rmycurry (1 Post)
  170. hotdesc (1 Post)
  171. aghextjs (2 Posts)
  172. a.bongardt (1 Post)
  173. abdel.e (1 Post)
  174. alexxey (1 Post)
  175. ccyborg (4 Posts)
  176. ryanfebus (1 Post)
  177. dirkc (2 Posts)
  178. RCV (2 Posts)
  179. amanind (4 Posts)
  180. pipiet06 (1 Post)
  181. alukin (2 Posts)
  182. raghu.gitam (1 Post)
  183. dicos (1 Post)
  184. docsnyder (1 Post)
  185. dgeiselman (7 Posts)
  186. adavsko (2 Posts)
  187. andrei.stoleru (2 Posts)
  188. i.stojanovic (2 Posts)
  189. ldubois (1 Post)
  190. rodo008 (1 Post)
  191. kman (1 Post)
  192. googlebush (1 Post)
  193. ldashevskiy (2 Posts)
  194. yerman (1 Post)
  195. kwyc (1 Post)