DyConditionField.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. Ext.define('erp.view.core.form.DyConditionField', {
  2. extend: 'Ext.form.FieldContainer',
  3. alias: 'widget.dyconfield',
  4. layout: 'hbox',
  5. type:'',
  6. caption:'',
  7. relation:'',
  8. layout: 'column',
  9. height: 22,
  10. name:'',
  11. items: [],
  12. initComponent : function(){
  13. this.callParent(arguments);
  14. var me = this;
  15. me.insert(0, {
  16. xtype: 'displayfield',
  17. columnWidth:0.4,
  18. value: me.caption,
  19. align:'right',
  20. name: me.name
  21. });
  22. me.insert(1,{
  23. xtype: 'displayfield',
  24. value: me.relation,
  25. columnWidth:0.2,
  26. name: me.name+"_relation"
  27. });
  28. me.insert(2, {
  29. xtype:me.type,
  30. columnWidth:0.4,
  31. hideLabel:true,
  32. name:me.name+"_condition"
  33. });
  34. },
  35. reset: function(){
  36. var me = this;
  37. me.items.items[0].reset();
  38. me.items.items[1].reset();
  39. },
  40. listeners: {
  41. afterrender: function(){
  42. this.getEl().dom.childNodes[1].style.height = 22;
  43. this.getEl().dom.childNodes[1].style.overflow = 'hidden';
  44. }
  45. },
  46. getValue: function(){//以;隔开{类型;值}
  47. var me = this;
  48. return me.items.items[0].value + ';' + me.items.items[1].value+";"+me.items.items[2].value;
  49. },
  50. isValid: function(){
  51. return true;
  52. }
  53. });