:: Forum >> Version 2 >>

Chrome, Safari: Combo in Grid, PopUp Position

I am using AW v2.5.3 Grid, when rows scrolled and try to use Combo Box in Chrome and Safari 3.2 on XP, the popup does not comes under the Cell from where it is initiated. You have to scroll to popup which is a way beyond the grid. Code is pasted below:
var dataArr = new Array();
            for (var 
0100i++) {         
                var 
rowArr = new Array();
                for (var 
015j++) {
                    
                    if(
=== 0)
                        
rowArr.push("row" "-col" j);
                    else
                        
rowArr.push(109223.445);
                }
                
dataArr.push(rowArr);
            }
            
            var 
obj = new AW.Grid.Extended;
            
obj.setId("myGrid");

            
obj.setRowCount(dataArr.length);
            
obj.setColumnCount(dataArr[0].length);

            
obj.setHeaderText(["Col01""Col02""Col03""Col04""Col05""Col06""Col07""Col08""Col09""Col10""Col11""Col12""Col13""Col14""Col15"]);
            
obj.setHeaderTooltip(function(index){ return this.getHeaderText(index); });     // Header Tooltip
            
obj.setHeaderCount(2);
            
            
obj.setCellData(dataArr);
            
obj.setCellTooltip(function(c,r){ return this.getCellText(cr); });    // Cell Tool Tips
            

            
obj.setCellEditable(true);

            var 
comboData = ["234.54""23,423.4""435,435.54""345.45"];

            var 
comboObj = new AW.Templates.Combo;

            var 
comboList = new AW.UI.List;
            
comboList.setItemText(comboData);
            
comboList.setItemCount(comboData.length);
                        
            
obj.setCellTemplate(comboObj3);
            
obj.setPopupTemplate(comboList3);

 
Thanks in advance
Mukesh Singla
Friday, November 21, 2008
Fix for popup position:

obj.setCellEditable(true3);

            var 
comboData = ["234.54""23,423.4""435,435.54""345.45",
                             
"234.54""23,423.4""435,435.54""345.45"];

            var 
comboList = new AW.UI.List;
            
comboList.setItemText(comboData);
            
comboList.setItemCount(comboData.length);
                        
            
obj.setCellTemplate(new AW.Templates.Combo3);
            
obj.setPopupTemplate(comboList3);
            
obj.getPopupTemplate(3).setStyle("height"17*comboData.length);
            
            
/**
             *  WebKit[Chrome, Safari] Fix - 
             *      Popup Position around initiating cell irrespective of scrolling
             */
            
if(!AW.ie) {
                
obj.getCellTemplate(3).showPopup = function() {
                    if (
this.$popup){
                        
document.body.removeChild(this.$popup);
                        
this.$popup null;
                    }
            
                    var 
ref this.element() ? this.element() : document.body;
            
                    var 
left AW.getLeft(ref);
                    var 
top AW.getTop(ref) + ref.offsetHeight;
                    
                    if(
AW.webkit)
                        
top -= obj.getScrollTop();
                        
                    if((
top + (17 comboData.length))  > alta.browser.height()) {
                        
top -= (+ ref.offsetHeight + (17 comboData.length));
                    }
            
                    var 
popup document.createElement("div");
                    
this.$popup popup;
                    
AW.$popup this;
            
                    
document.body.appendChild(popup);
                    
popup.className "aw-popup-window aw-system-control";
                    
popup.style.left left "px";
                    
popup.style.top top "px";
                    
popup.innerHTML this.getPopup().toString();
            
                    
popup.addEventListener("mousedown"onmousedowntrue);
                };
            }
            
/**
             *  End: WebKit[Chrome, Safari] Fix - 
             *          Popup Position around initiating cell irrespective of scrolling
             */
 
Hey Alex, Is there any better solution for this?
Thanks
Mukesh Singla
Wednesday, November 26, 2008



This topic is archived.

Back to support forum

Forum search