事件编写一个处理脚本
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>
首玩为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>
相关文章推荐
- Java 组件及事件处理实训 实训1: 编写一个窗体程序,能够对文本区中的文字设置字体和大小。
- Java 组件及事件处理实训 实训2:编写一个窗体程序,用于计算一元二次方程
- 如何在客户端写脚本触发一个服务器端事件处理过程.在线等.
- 编写一个Shell脚本,脚本中定义两个函数fun1和fun2
- 如何编写一个shell脚本查看某个进程是否在运行
- javascript同一个事件如何注册多个处理函数
- 编写一个程序,查找C语言中的基本语法错误,如圆括号、方括号、花括号不配对等,正确处理引号与注释
- 仅使用处理单个数字的I/O例程,编写一个过程以输出任意实数(可以是负的)
- 本文结合大量实例阐述如何编写一个shell脚本
- 使用AmplifyJS和JQuery编写更好更优雅的javascript事件处理代码
- unix/windows下编写一个python脚本(文件备份)--python学习(4)
- 编写一个与3.12节中dup2功能相同的函数,要求不调用fcntl函数,并且要有正确的出错处理(APUE)
- 一个简易的自处理事件循环
- UIView上添加了一个按钮和一个单击手势的事件相应,互相不影响的处理方法。。
- 双重循环并对第一次出现特殊处理—一个很纠结的dos脚本
- 编写一个Excel脚本的一些总结
- 一步一步SharePoint 2007之二十六:编写一个带事件的WebPart
- 使用PL SQL 编写一个逗号分割字符串分割处理函数
- [Win32]一个调试器的实现(二)调试事件的处理
- ie 处理 gif动画 的onload 事件的一个 bug