3.2.0

only one selected Checkbox in Grid

Hi all,

i have a problem with unchecking other checkboxes in a Grid when i check another.

Here is the Code:

var CellData = var CellData = [
                                [0,"99917180","Nokia 6303i classic matt black","9,99"],
                                [0,"99916954","Nokia 6700 slide petrol MyCommunity","4,95"]
                                ];
                                
var myHeaders = ["Wahl","Artikelnummer","Beschreibung","Preis"];

    var obj = new AW.UI.Grid; 
    obj.setHeaderText(myHeaders); 

    // setting cell text
    obj.setCellText(function(c,r){return CellData[r][c]} );  
    
    //Grid definitions
    obj.setSize(500, 200); 
    obj.setColumnCount(4);  
    obj.setRowCount(2);  
    obj.setColumnWidth(50, 0);  
    obj.setColumnWidth(100, 1);
    obj.setColumnWidth(290, 2);
    obj.setColumnWidth(50, 3);
    
    //Setting the ceckbox as template in column 0
    obj.setCellTemplate(new AW.Templates.Checkbox, 0);
   
    //setting cell values and text
    obj.setCellValue(function(col, row){return CellData[row][0]==1 ? true : false}, 0); 
    obj.setCellText(function(col, row){return this.getCellValue(col, row) ? "1" : "0"}, 0);

    //call this when changing the value of the checkbox 
    obj.onCellValueChanged = function(value, col, row){
       //translate the boolean values to 0 or 1 
       if (value) {
            value=1;
            }else{
            value=0;
            };
            for (x=0;x<2;x=x+1)
            {
            if (x != row) {
                // HERE I WANT TO CHANGE THE CELL VALUE IN ROW x AND Column 0
                alert(x);               
                }
            }
            if(col == 0)
            //alert with the values i need...
            alert("SuplierAid:"+CellData[row][1]+ " Status:"+value);
            //... in this function
            //update_memdata(CellData[row][1], value);
    }
    //writing Object
    document.write(obj);


any suggestion how to do this?

greetz
skatanic
October 7,
Try placing:
this.getCellTemplate(col,row).refresh();
at the very end of onCellValueChanged function.
if(col == 0) {
......
} // don't forget to put '{}' in this block
this.getCellTemplate(col,row).refresh();
}
C++
October 7,
Also try:
var a = value;
if(a){
...

instead of single:
if (value) {
...
C++
October 7,
thanx for the reply but it doesn't work for me. I don't have a problem with checking this boxes.
I want it like this one here:

http://www.activewidgets.com/ui.radio/

greetz
skatanic
October 7,
Hi,

forget about it. Got the solution.

Here is the code:

var CellData = var CellData = [
                                [0,"99917180","Nokia 6303i classic matt black","9,99"],
                                [0,"99916954","Nokia 6700 slide petrol MyCommunity","4,95"]
                                ];
                                
var myHeaders = ["Wahl","Artikelnummer","Beschreibung","Preis"];

    var obj = new AW.UI.Grid; 

obj.setId("myGrid");
obj.setCellText(function(c,r){return CellData[r][c]} );
obj.setHeaderText(myHeaders);
obj.setColumnCount(4);
obj.setRowCount(' || v_handy.count || ');
    obj.setColumnWidth(50, 0);  
    obj.setColumnWidth(100, 1);
    obj.setColumnWidth(290, 2);
    obj.setColumnWidth(50, 3);
obj.setSelectorVisible(false);
obj.setSelectionMode("none");

var radio = new AW.Templates.Checkbox;
radio.setClass("toggle", "radio");
radio.setClass("templates", "radio");
obj.setCellTemplate(radio, 0);

    
    obj.setCellValue(function(col, row){return CellData[row][0]==1 ? true : false}, 0); 
    obj.setCellText(function(col, row){return this.getCellValue(col, row) ? "1" : "0"}, 0);

    
    obj.onCellClicked = function(value, col, row){
    if(col == 0) {
    var a = value
       if (a) {
            a=1;
            }else{
            a=0;
            };
  
            for (x=0;x<' || v_handy.count ||
                ';x=x+1)
            {
            if (x != row) {
                obj.setCellValue(false,0,x);  
                //alert(x);        
                }
            }
            
            alert("SuplierAid:"+CellData[row][1]+ " Status:"+a);
            //update_memdata(CellData[row][1], value);
            };
            
    }
    
   document.write(obj);

skatanic
October 7,

This topic is archived.

See also:


Back to support forum