欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » SmartGrid使用教程 » 正文

SmartGrid教程(十):计算列与栏位数据校验

创建时间:2012年03月11日 21:05  阅读次数:(4416)
分享到:

一、计算列


SmartGrid的计算列不是严格意义上的计算列,只实现前台相关栏位值改变时通过表达式计算出计算列的值,如果是从数据库中获取的数据,必须显式包含该计算列在数据源中,否则该列无值。
可通过设置栏位的Expression属性设置计算表达式。
例:
Expression="列A-列B"

二、栏位数据校验


方法一、SmartGrid行检验事件(OnRowDataCheck)在行改变时自动触发,可以设置OnRowDataCheck属性实现自己的校验代码。
例:
<SmartWeb:SmartGrid ID="grid" runat="server" OnRowDataCheck="checkInput" >
<Columns >
</Columns >
</SmartWeb:SmartGrid >

然后定义checkInput方法:
function checkInput(grid,ev)
{
if(grid.getCellValue(grid.row,"CompanyName") == "")
{
alert("公司名称不能为空!"); 
ev.checkStatus = "retry";  //retry:重新录入、cancel取消sucess校验成功(默认值)
grid.focus(grid.row,"CompanyName");
}
}

注:grid.getCellValue方法的作用是获取行中指定栏位的值。

方法二、在页面提交前,SmartGrid触发OnCheckNullRow脚本事件实现检验。
在服务器端设置判断是否为空的脚本方法名:
this.DataGrid.OnCheckNullRow = "myCheckNullRow";

客户端定义脚本方法内容:
function myCheckNullRow(grid,ev)
{
var val = grid.getCellValue(ev.row,"存货");
if(val =="")
{
ev.isNull = true;//如果某行的存货列没有录入,可以认为该行的录入无效
}
return ;
}

方法三、在栏位对应的htc文件中扑获数据改变(如onchange)时机校验。
代码略。嬪SO(uYe z'
来源:.net学习网
说明:所有来源为 .net学习网的文章均为原创,如有转载,请在转载处标注本页地址,谢谢!
【编辑:Wyf】

打赏

取消

感谢您的支持,我会做的更好!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

最新评论

共有评论0条
  • 暂无任何评论,请留下您对本文章的看法,共同参入讨论!
发表评论:
留言人:
内  容:
请输入问题 14+53=? 的结果(结果是:67)
结  果: