HrOrgTreeDbfindTrigger.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. /**
  2. * multi dbfind trigger
  3. *
  4. */
  5. Ext.define('erp.view.core.trigger.HrOrgTreeDbfindTrigger', {
  6. extend: 'Ext.form.field.Trigger',
  7. alias: 'widget.hrOrgTreeDbfindTrigger',
  8. triggerCls: 'x-form-search-trigger',
  9. onTriggerClick: function() {
  10. var trigger = this;//放大镜所在
  11. var key = this.name;//name属性
  12. var value = this.value;
  13. var dbfind = '';//需要dbfind的表和字段
  14. var keyValue = this.value;//当前值
  15. var dbwin = new Ext.window.Window({
  16. id : 'dbwin',
  17. title: '查找',
  18. height: "100%",
  19. width: "80%",
  20. maximizable : true,
  21. buttonAlign : 'center',
  22. layout : 'anchor',
  23. items: [],
  24. buttons : [{
  25. text : '确 认',
  26. iconCls: 'x-button-icon-save',
  27. cls: 'x-btn-gray',
  28. handler : function(){
  29. var contentwindow = Ext.getCmp('dbwin').body.dom.getElementsByTagName('iframe')[0].contentWindow;
  30. var tree = contentwindow.Ext.getCmp('tree-panel');
  31. var data = tree.getChecked();
  32. var value = null;
  33. for(i=0;i<data.length;i++){
  34. if(i==0){
  35. value = data[i].data.text;
  36. if(value.indexOf('(')){
  37. value = value.split('(');
  38. value = value[0];
  39. }
  40. }else{
  41. if(value.indexOf('(')){
  42. value = value.split('(');
  43. value = value[0];
  44. }
  45. value = value+"#"+data[i].data.text;
  46. }
  47. }
  48. trigger.setValue(value);
  49. Ext.getCmp('dbwin').close();
  50. }
  51. },{
  52. text : '关 闭',
  53. iconCls: 'x-button-icon-close',
  54. cls: 'x-btn-gray',
  55. handler : function(){
  56. Ext.getCmp('dbwin').close();
  57. }
  58. }]
  59. });
  60. dbwin.add({
  61. tag : 'iframe',
  62. frame : true,
  63. anchor : '100% 100%',
  64. layout : 'fit',
  65. html : '<iframe id="iframe_dbfind_'+caller+"_"+key+"="+keyValue+'" src="'+basePath+'jsps/common/treepaneldbfind.jsp?key='+key+"&dbfind="+dbfind+"&keyValue=&trigger="+trigger.id+'" height="100%" width="100%" frameborder="0" scrolling="no"></iframe>'
  66. });
  67. dbwin.show();
  68. }
  69. });