您的位置:首页 > 其它

事件编写一个处理脚本

2007-10-29 18:31 253 查看
在WebGrid的Cell编缉中,如何按向下键,自动跳到下行的同列的Cell中
首玩为WebGrid新增一个客户端事件EditKeyDownHandler(gridName, cellId, key)
然后为此事件编写一个处理脚本




处理函数


function uGridOrder_EditKeyDownHandler(gridName, cellId, key)






{


if(key==40)






{


var cell = igtbl_getCellById(cellId);


cell.endEdit();


window.event.keyCode = 40;


}


}

为Infragistics UltraWebGrid 行中的按钮添加操作确认提示

在项目的开发中应用了Infragistics.WebUI.UltraWebGrid这个控件,并把其中的两列设置为了“按钮”列,其中的一个按钮是实现页面跳转的功能,不需要提示,而另一列是实现对该行记录的删除功能,需要在删除前显示一个删除确认提示。经过推敲,找到解决的办法,具体做法如下:

一、在UltraWebGrid的属性中找到:DisplayLayout —> ClientSizeEvents —> ClickCellButtonHandler,点击此处,会出现“Add new handler...”提示,点击这个提示,在出现的对话框中为要添加的客户端事件命名(如:CellButtonClick),点击“OK”按钮。客户端脚本事件添加成功。

二、切换到UltraWebGrid所在页面的代码视图下,会看到自动添加的如下脚本:


<script id="Infragistics" type="text/javascript">


<!--




function CellButtonClick(gridName, cellId)...{


//Add code to handle your event here.




}// -->

在脚本方法中添加脚本:


<script id="Infragistics" type="text/javascript">


<!--




function CellButtonClick(gridName, cellId)...{


//Add code to handle your event here.




//分析参数cellId的格式为:grid的ID+"rc_"+行索引+"_"+列索引 (如UltraWebGrid1rc_4_5)


//可以用以下方法获取按钮所在的列索引


var colId = cellId.substring(cellId.indexOf('_')+1);


colId = colId.substring(colId.indexOf('_')+1);




//根据索引的值,为相应列的按钮添加提示


if(colId==6)




...{


return(!confirm('你确定要删除该报表吗?'));


}


}// -->

经过如上步骤地处理,就可以为Infragistics UltraWebGrid 行中的按钮添加操作确认提示了。如还有其它方法,欢迎探讨。

=======================================================================================

后台动态生成CheckBox,使用UltraWebGrid1_InitializeRow事件。


protected void UltraWebGrid1_InitializeRow(object sender, RowEventArgs e)




...{


if (e.Row.Band.Index == 0)




...{


string str = string.Empty;


str = "<input id='chk" + e.Row.Index + "' type='checkbox' name='chkName" + e.Row.Index + " ' />";


e.Row.Cells[0].Text = str;


}


}

2. 前台实现对CheckBox的操作。


<script type="text/javascript">


function UltraWebGrid1_ColumnHeaderClickHandler(gridName, columnId, button)




...{


var oGrid = igtbl_getGridById("UltraWebGrid1");


var oRows = oGrid.Rows;


var count = oRows.length;


//var arr = new Array();




for(i=0,j=0;i<count;i++)




...{


var chkID = "chk"+i;


var chk = document.getElementById(chkID);


if(chk.checked == true)




...{


chk.checked = false;


//var row = oRows.getRow(i);


//var cell = row.getCell(1);


//arr[j] = cell.getValue();


}


else




...{


chk.checked = true;


}


}


}


</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐