gpt4 book ai didi

javascript - p :calendar onselect/onchange not fired

转载 作者:行者123 更新时间:2023-11-29 17:00:43 24 4
gpt4 key购买 nike

我正在尝试让两个 Javascript 函数在用户从 p:calendar 选择日期时立即调用。

不幸的是,onchange 事件只有在用户在文本字段和 Tab 键中手动输入日期时才会被处理。 onselect 事件根本没有被触发。

xhtml如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<h:outputScript library="js" name="custom.js" target="body" />
</h:head>
<h:body>
<p:log />
<h:form id="someForm">
<p:panelGrid columns="2">
<p:outputLabel for="myCalendar" value="Date: " />
<p:calendar id="myCalendar" onchange="alertDateSelected()" onselect="alertSelectEvent()" showOn="button" />
</p:panelGrid>
</h:form>
</h:body>
</html>

onselect 和 onchange 事件的 Javascript 代码:

function alertDateSelected() {
PrimeFaces.info('Selected date from p:calendar');
}

function alertSelectEvent() {
PrimeFaces.info('Clicked p:calendar date selection button');
}

是否有可能 Hook 到 p:calendar 上的 onchange/onselect 事件;例如如果用户从日历面板或通过“今天”按钮选择日期?如果是这样,我做错了什么?

最佳答案

尝试使用 ajax 事件列表器。例如这样的事情:

        <p:calendar id="myCalendar">
<p:ajax event="dateSelect" listener="alertDateSelected" global="false" />
</p:calendar>

关于javascript - p :calendar onselect/onchange not fired,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28544323/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com