注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

赚客吧

 
 
 

日志

 
 
关于我

从明天起,做一个幸福的人, 洗澡,撸管,好好工作, 从明天起,关心姑娘和票子, 我有一种追求,骚气蓬勃,春心荡漾。

网易考拉推荐

(转)JSF的immediate属性  

2011-08-15 11:29:36|  分类: JSF |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

即时事件是指JSF视图组件在取得请求中该取得的值之后,即立即处理指定的事件,而不再进行后续的转换器处理、验证器处理、更新模型值等流程。

 

使用immediate属性目的:

1.允许一个commandLink或commandButton浏览到另一个页面,而不处理当前页面输入域的任何数据,即使有验证错误.Cancel按钮,通常属于这一类;
2.允许commandLink或commandButton触发后端逻辑,而忽略页面上的一些字段验证。这是最普遍的应用。
例如:下面的code,按钮执行导航并没有验证required域
<h:inputText id="it" required="true"/>
<t:message for="it"/>
<t:commandButton value="submit" immediate="true" action="welcome"/>

3.使一个或多个输入组件优先验证,如果它们中的任何是无效的,那么就不会执行其他输入组件的验证,这样可以减少错误信息的显示
例如下面的代码,仅对第一个组件进行验证,尽管它们都是required,而当第一个验证通过时,才会执行第二个组件的验证
<h:inputText id="it1" immediate="true" required="true"/>
<h:inputText id="it2" required="true"/>
<t:message for="it1"/>
<t:message for="it2"/>
<t:commandButton value="submit" action="welcome"/>

      许多开发人员认为,使用组件的immediate属性可以跳过“处理验证”阶段。事实并非如此,使用immediate属性会让事件在应用请求值阶段被处理
而在<rich:menuItem value="#{msgs.save }"
actionListener="#{pc_OrganizationAdd.organizationAddActionListener}"
immediate="false" submitMode="ajax"
data="#{pc_OrganizationAdd.msg }"
oncomplete="handleResponse(data)" />
中如果设置immediate="true",则无法获取form中数据

  评论这张
 
阅读(1026)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017