2012-02-22 71 views
1

我可以从update=":myComponent"中排除特定ID吗?从更新中排除ID

我有一个较大的页面(有几个表格,输入字段等),它被包裹在一个<p:panel id="outerPanel">。大多数时候,我只是执行update=":outerPanel",这很好。但现在我面临一个问题,我必须更新页面,除了一个表格。

如何从更新过程中排除该表(或通常的任何组件)?

+0

这是使用Primefaces吗?你的“ JScoobyCed 2012-02-23 03:21:30

+0

是的它使用的是primefaces – membersound 2012-02-23 07:36:39

+0

设置输入组件的禁用属性会阻止JSF应用它的值,但不知道其他组件。我宁愿提及具体的ID并在'update'中跳过表的ID以排除它。 – Nikhil 2012-02-23 11:24:22

回答

0

如果ID不刷新可以通过一些逻辑来确定(即:

​​

那么你可以尝试使用jsf.util.chain建设JSF电话:(注意这里采用钻嘴鱼科JSF IMPL)

function myJsfSubmit(callerElement) { 
    var myIdsToSubmit = 'main-form:id-to-refresh-1 main-form:id-to-refresh-2'; 
    // put your logic to exclude the desired ID here 
    // ... 
    // then 
    jsf.util.chain(callerElement,null,'mojarra.ab(this,event,\'action\', 
     \'main-form:id_to-submit\',\'+ myIdsToSubmit +\')'); 
    return false; 
    } 

,并使用上述的onClick()或您的窗体或组件的onSubmit()功能:

<h:commandButton onclick="myJsfSubmit(this)" /> 
0

不,我认为从facelet是不可能的。在服务器端,你可以操纵ajax请求,但我不认为这是你想要的。

也许你的观点允许围绕要更新的零件包装一些h:panelGroup