flex中event.preventDefault()方法取消事件的默认行为
更新时间:2013年04月28日 15:51:48 作者:
当点击datagrid的第一和第四项时,itemEdit事件将不起作用,许多事件都有默认执行的关联行为,接下来为大家详细介绍下,感兴趣的朋友可以参考下哈
先看一个例子:
<mx:DataGrid id= "songList" dataProvider= "{songDB}" width= "100%" height= "100%" editable= "true"
itemEditEnd="itemEditEndHandler(event)" itemEditBeginning= "itemEditBeginningHandler(event)"
>
其中itemEditBeginningHandler就可以这样控制:
private function itemEditBeginningHandler(event:DataGridEvent): void
{
if (event.columnIndex== 0 || event.columnIndex== 3 ){
event.preventDefault();
}
}
当点击datagrid的第一和第四项时,itemEdit事件将不起作用。
下面是event.preventDefault()说明
如果可以取消事件的默认行为,则取消该行为。
许多事件都有默认执行的关联行为。例如,如果用户在文本字段中键入一个字符,则默认行为就是在文本字段中显示该字符。由于可以取消 TextEvent.TEXT_INPUT 事件的默认行为,因此您可以使用 preventDefault() 方法来防止显示该字符。
不可取消行为的一个示例是与 Event.REMOVED 事件关联的默认行为,只要 Flash Player 从显示列表中删除显示对象,就会生成该事件。由于无法取消默认行为(删除元素),因此 preventDefault() 方法对此默认行为无效。
您可以使用 Event.cancelable 属性来检查是否可以防止与特定事件关联的默认行为。如果Event.cancelable 的值为 true ,则可以使用 preventDefault() 来取消事件;否则,preventDefault() 无效。
复制代码 代码如下:
<mx:DataGrid id= "songList" dataProvider= "{songDB}" width= "100%" height= "100%" editable= "true"
itemEditEnd="itemEditEndHandler(event)" itemEditBeginning= "itemEditBeginningHandler(event)"
>
其中itemEditBeginningHandler就可以这样控制:
复制代码 代码如下:
private function itemEditBeginningHandler(event:DataGridEvent): void
{
if (event.columnIndex== 0 || event.columnIndex== 3 ){
event.preventDefault();
}
}
当点击datagrid的第一和第四项时,itemEdit事件将不起作用。
下面是event.preventDefault()说明
如果可以取消事件的默认行为,则取消该行为。
许多事件都有默认执行的关联行为。例如,如果用户在文本字段中键入一个字符,则默认行为就是在文本字段中显示该字符。由于可以取消 TextEvent.TEXT_INPUT 事件的默认行为,因此您可以使用 preventDefault() 方法来防止显示该字符。
不可取消行为的一个示例是与 Event.REMOVED 事件关联的默认行为,只要 Flash Player 从显示列表中删除显示对象,就会生成该事件。由于无法取消默认行为(删除元素),因此 preventDefault() 方法对此默认行为无效。
您可以使用 Event.cancelable 属性来检查是否可以防止与特定事件关联的默认行为。如果Event.cancelable 的值为 true ,则可以使用 preventDefault() 来取消事件;否则,preventDefault() 无效。
相关文章
FLEX ArrayCollection删除过滤的数据问题解决
ArrayCollection添加过滤器后,调用removeItemAt()是无法删除的,下面有个不错的解决方法,大家可以参考下2014-06-06
flash 报错捕获(Catch All Exception in Flash)
就是在全局任何地方产生的错误如果没有被捕获,都可以在捕获阶段和冒泡阶段被捕获,接下来为大家介绍一种可以捕捉所有错误的方法,感兴趣的你可不要错过了哈2013-03-03
Flex中的HDividedBox和VDividedBox的比较附图
学习Flex的朋友对HDividedBox和VDividedBox并不陌生吧,下面是两者的简单比较,感兴趣的朋友可以参考下2013-10-10


最新评论