2013-03-04 60 views
0

我想禁用表单main和render表单中的所有元素在Add New按钮上创建,但是我面临一些问题:点击Add New Button JS函数被调用,但表单被禁用了一段时间,以及表单create不会呈现。JSF2表单不是用JavaScript函数呈现来禁用所有表单元素

<script type="text/javascript"> 
function enableDisable(){ 
alert("Enable Disable"); 
var f = document.getElementById('main'); 
var len=f.elements.length; 
for(x=0;len>x;x++) { 
    f.elements[x].disabled=true; 
} 
} 

在点击添加按钮的JS函数被调用,但形式是同时禁用,以及窗体创建不会被渲染。

<h:commandButton onclick="enableDisable()" value="Add new" action="#{cars.resetCreate}" render="create" > 

</h:commandButton> 
+0

请编辑您的问题,使这部分可以理解的'我想禁用表单中的所有元素主要和渲染表单创建添加新按钮,但我面临...'以及剩下的问题。请突出显示id,按钮和方法的名称please.question像这样是如此可怕 – Freak 2013-03-04 06:42:26

回答

0

首先没有render<h:commandButton>。它是rendered是布尔这需要truefalse .JSF commandButtoncommandLink没有在建与阿贾克斯一样<p:commandButton>这是primefaces component.And属性render仅适用于<f:ajax>。所以,你的情况如果你想获得create形式,你必须做这样的事情,

<h:commandButton onclick="enableDisable()" value="Add new" action="#{cars.resetCreate}"> 
    <f:ajax execute="@this" render="create"> 
</h:commandButton>