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

p: selectOneMenu ajax更改事件不起作用

申屠涛
2023-03-14

我在xhtml上有以下组件:

            <p:outputLabel for="concept" value="Concept" />
        <p:selectOneMenu id="concept" value="#{dIGRCController.digrc.qconce}"
            requiredMessage="Debe de seleccionar un concepto."
            required="#{request.getParameter('validate')}">

            <f:selectItem itemLabel="Concept" itemValue="" />
            <f:selectItems value="#{cCRX1Controller.ccrx1.concepts.entrySet()}"
                var="concepts" itemValue="#{concepts.key}"
                itemLabel="#{concepts.value}" />

            <p:ajax event="change" execute="@this" listener="#{dIGRCController.testing()}" />

        </p:selectOneMenu>

这些值正确来自cCRX1Controller类。然而,当我选择一个选项时,我试图显示该值。#{digrcontroller.testing()}如下所示:

public void testing()
{
    System.out.println("sdfsd");
}

我做错了什么?我检查了这个问题,但不知道问题出在哪里。

共有1个答案

何乐
2023-03-14

试试这个

<p:ajax process="@this" listener="#{dIGRCController.testing()}" />

我认为Primeface选择一个菜单的ajax事件的默认值是value eChange事件。所以,尝试使用也

<p:ajax event="valueChange" process="@this" listener="#{dIGRCController.testing()}" />
 类似资料:
  • 我有一个小的测试页面设置来测试我有的一个sprite表。中的每个sprite如下所示... 我的页面是这样的... null null 在循环过程中,我记录了类名,可以看到它的变化,并且这些名称对应于我的样式表中存在的类。和都在images文件夹中,并且images文件夹与我的页面位于同一目录中。 如果我只是从我的样式表中复制一个规则并将其直接放到我的页面上,并将名称替换为以进行测试,我就可以显示

  • 我正在尝试以编程方式更改页面。这第一行代码正在工作,但我不需要它延迟,所以我尝试了第二行,但它不起作用。我错过了什么? 工作(但我不想延迟): 不工作: 我在<代码>中调用它

  • 我有一个音乐播放器活动来控制歌曲的播放。我已经阅读了有关管理音频焦点的文档,并在

  • 问题内容: 我有一份注册表,正在使用它提交。 这是我的AJAX请求: 在我的 Submit1.php 文件中,我检查数据库中是否存在 电子邮件地址 和 用户 名字 段。如果这些值存在 而没有页面刷新, 则希望显示一条错误消息。 如何将其添加到我的AJAX请求的 成功 回调中? 问题答案: 结果可能不是JSON格式,因此当jQuery尝试如此解析时,它将失败。您可以使用回调函数捕获错误。 无论如何,

  • 我在编辑时注册了触发器- 我也试过了,但没有注册触发器,以防发生奇怪的碰撞。是否需要执行其他操作来触发该函数?