min.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // =================================================================================================
  2. // - 2015.08.18 Creation LKM
  3. //==================================================================================================
  4. /*
  5. * 현제 화면 중에 그리드에 onkeyup 이벤트가 있으면 사용하면 안됨.
  6. * */
  7. function fSetKeyUpGridEvent(){
  8. var controls = document.controls;
  9. for(var i=0; i<controls.length; i++)
  10. {
  11. if (controls.item(i).elementName == "xforms:datagrid") {
  12. controls.item(i).attribute("onkeyup") = "fShowIptSumAmt();";
  13. }
  14. }
  15. }
  16. function fShowIptSumAmt() {
  17. var ctarget = event.currentTarget;
  18. var ccntrl = document.controls(ctarget);
  19. var ctop = ccntrl.attribute("top");
  20. var cleft = event.x-40;
  21. ccntrl.parent.removeChild("ipt_total_sum_amt");
  22. if (event.keyCode == 17 || event.keyCode == 16){ //컨트롤 쉬프트
  23. var crt_iptbox = ccntrl.parent.createChild("xforms:input", "id:ipt_total_sum_amt;left:"+cleft+"px; top:"+ctop+"px; width:80px; height:19px; format:(-)#,###; text-align:right; ");
  24. model.makeNode("/root/sumtmp/sumamt");
  25. crt_iptbox.attribute("ref") = "/root/sumtmp/sumamt";
  26. //crt_iptbox.attribute("ondblclick") = "document.controls(event.currentTarget).attribute('visibility') = 'hidden'";
  27. crt_iptbox.attribute("ondblclick") = " event.preventDefault(); document.controls(event.currentTarget).parent.removeChild('ipt_total_sum_amt'); ";
  28. var rows = ccntrl.selectedRows
  29. var rownum = -1;
  30. var sumamt = 0;
  31. for (var i=0; i < ccntrl.selectedRows; i++ ){
  32. rownum =ccntrl.selectedRow(i);
  33. var getval = ccntrl.valueMatrix(rownum, ccntrl.col);
  34. sumamt += parseInt( getval == "" || getval == "-" ? 0 : getval );
  35. }
  36. model.setValue(crt_iptbox.attribute("ref"), sumamt);
  37. crt_iptbox.refresh();
  38. }
  39. }