10.事件
Supcan Report的OnEvent( id, Event, p1, p2, p3, p4 )事件含义及参数分别如下:
备注1:行列增删“前”的4个事件(BeforeRowInserted、BeforeColInserted、BeforeRowDeleted、BeforeColDeleted),是用户交互过程中触发的,增删行列的函数是不会触发该事件的;
备注2:在行列增删“前”事件、以及BeforeCellPropChanged事件中,你可以通过全局函数 CancelEvent 去阻止下一步的行列增删动作,如下例:
function OnEvent(id, Event, p1, p2, p3, p4)
{
if(Event == "BeforeRowInserted") {
AF.func("CancelEvent", ""); //阻止插入行
}
}
备注3:SelChanged、Clicked、DblClicked 和 EditChanged、Editing、CellPropChanged事件需要SubscribeEvent( )预订才会生效, 事件的js用法可参见下例:
function OnReady( id )
{
AF.func( 'ReadXML', 'index.XML' ); //加载报表
AF.func("SubscribeEvent", "SelChanged, EditChanged"); //预订事件
}
function OnEvent(id, Event, p1, p2, p3, p4)
{
if( Event == "SelChanged" ) {
//...略
}
}
备注4:Checked事件必须要先预订 Clicked 事件才能生效;
备注5:可以继续用 GetCellProp 函数获取该单元格的 crosstabRowDir、crosstabColDir 属性,即所在的交叉项;