当前位置: 首页 > 知识库问答 >
问题:

使用Java脚本启用/禁用primefaces的SelectOneMenu

秦皓君
2023-03-14
        <h:head>
        <style type="text/css">
    .ui-widget,.ui-widget .ui-widget {
        font-size: 12px !important;
    }
    </style>
        <script>
            function disableOneMenu() {
                alert("In Disable One Menu Function...");
                var clickedGroup = document.getElementById('groupOneMenu').value;
                alert("Selected Value " + clickedGroup);
                if (clickedGroup == "Designation") {
                    document.getElementById('designation').disabled = true;
                    alert("Location One Menu Disabled...");
                } 
            }
        </script>
        <link type="text/css" rel="stylesheet"
            href="#{request.contextPath}/themes/redmond/skin.css" />
    </h:head>
    <h:body>
        <h:form>
            <p:layout fullPage="true">
                <p:layoutUnit position="north" size="30"
                    header="HCV : Peer Group Analysis" resizable="true">
                </p:layoutUnit>
                <p:layoutUnit id="contentLayout" position="west" size="200">
                    <h:panelGrid columns="2">
                        <h:outputText value="Analyse for values of attribute: " />
                        <p:selectOneMenu id="groupOneMenu" value="#{userInput.groupAttr}"
                            style="font-size:18;font-weight:bold;color:blue;width:100">
                            <f:selectItem itemLabel="Select One" itemValue="" />
                            <f:selectItems value="#{userInput.groupAttrList}" />
                            <p:ajax event="valueChange" actionListener="disableOneMenu" />
                        </p:selectOneMenu>
                        <h:outputText value="Designation: " />
                        <p:selectOneMenu id="designatinoOneMenu"
                            value="#{userInput.designation}"
                            style="font-size:18;font-weight:bold;color:blue;width:100">
                            <f:selectItem itemLabel="Select One" itemValue="" />
                            <f:selectItems value="#{userInput.designationList}" />
                        </p:selectOneMenu>
                       </h:panelGrid>
            </p:layoutUnit>
        </p:layout>
    </h:form>
</h:body>
</html>

共有1个答案

和谦
2023-03-14

PrimeFaces组件的JavaScript API大多是文档化的。DOM变量上有disable()enable()方法。

您需要使用widgetvar属性为该变量指定名称:

<p:selectOneMenu id="myMenu" widgetVar="myMenuWidget" ... />

您可以在JavaScript中调用:

myMenuWidget.disable();
 类似资料:
  • PrimeFaces的CommandButton允许指定图标: 但是,我需要根据JSF托管bean属性启用/禁用图标。 我试过了 这适用于选择不同的图标,但不允许完全禁用图标(即,在没有属性的情况下获得相同的渲染效果)。我可以在中返回一个空字符串,但PrimeFaces仍将渲染额外的

  • 我尝试在我的Xamarin Ui测试中以编程方式启用/禁用wifi。< br >我已经找到了这个:Android:如何以编程方式启用/禁用Wifi或互联网连接。但是它似乎根本不起作用。< br> 我还尝试了这样的方法: 第一行 (Android.App.Application.Context) 会引发一个异常: 我正在使用以下命名空间: 我的项目引用了< code>Mono。Android。

  • 问题内容: 我正在尝试对聚合执行以下查询: 并引发以下异常: 任何想法我该如何解决。参考: http://www.elasticsearch.org/guide/zh- CN/elasticsearch/reference/current/search-aggregations-metrics-sum- aggregation.html 问题答案: 默认情况下,elasticsearch中禁用动态

  • 我正在尝试以下关于聚合的查询: 它引发以下异常: 你知道我该怎么解决这个问题吗。参考: http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-aggregations-metrics-sum-aggregation.html

  • 我有一个文本框,它是使用简单的禁用html标记禁用的。我需要在单击启用按钮时启用它,再次需要在单击禁用按钮时禁用它。下面是代码-

  • 我有两个带有ImageIcon的JRadioButton。由于我使用的图像图标,我需要给出一个按钮被选中而另一个按钮未被选中的外观。为此,我尝试禁用另一个按钮,它会自动将ImageIcon更改为disabled外观。 问题是,当我点击禁用的JRadioButton时,什么都没有发生,甚至连JRadioButton上的ActionListener都没有被调用。 有没有一种方法可以通过直接单击禁用的J