我需要获取 <p:selectOneMenu>
的值在javascript中,但我得到的结果是null。我可以调用该函数,但是当我尝试访问 <p:selectOneMenu>
的值时。我在警报框中得到空值。
请找到以下代码。
<p:outputLabel for="year" value="Year: " />
<p:selectOneMenu id="year" style="width:150px " value="#{someBean.year}">
<f:selectItem itemLabel="All" itemValue="All"/>
<f:selectItem itemLabel="2014" itemValue="2014"/>
<f:selectItem itemLabel="2013" itemValue="2013"/>
<f:selectItem itemLabel="2012" itemValue="2012"/>
<f:selectItem itemLabel="2011" itemValue="2011"/>
<f:selectItem itemLabel="2010" itemValue="2010"/>
<f:selectItem itemLabel="2009" itemValue="2009"/>
</p:selectOneMenu>
Javascript函数:
function validateYearMonth()
{
var yearValue1=document.getElementById('Form:year_input');
var yearValue2=document.getElementById('Form:year');
alert(yearValue1);
alert(yearValue2);
}
调用函数:
<p:commandButton id="Submit" action="#{someBean.functionName}"
onclick="validateYearMonth()" value="Submit" ajax="false" style="float:right;">
</p:commandButton>
我不明白出了什么问题。 虽然我能够获取元素如果我正在这样做
var yearValue1=document.getElementById('Form:year_input');
但我无法获取该值。非常感谢任何帮助。
最佳答案
一个非常简单的方法是设置一个 widgetVar
名称,然后获取当前值!
<p:selectOneMenu widgetVar="yearWV">
在 javascript 中(PF 4 及更高版本)
PF('yearWV').value
您可以立即在控制台中进行测试
关于javascript - 获取 p :selectOneMenu in JavaScript 的选定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25152198/