需要在JSF中使用单选按钮调用JavaScript函数

时间:2016-12-14 15:59:06

标签: javascript html jsf

我在名为showSearchAccount()的Common.js文件中定义了一个JavaScript函数,该函数在调用时显示弹出窗口。我还在xhtml文件中定义了两个单选按钮:

 <h:selectOneRadio value="#{userData.data}">
            <f:selectItem itemValue="Yes" itemLabel="Yes" />
            <f:selectItem itemValue="No" itemLabel="No" />
 </h:selectOneRadio>

当我点击是单选按钮时,我需要弹出窗口,但如果我在第一个 selectItem onclick onchnage >标签弹出窗口没有出现。如果我将 onclick 放在 selectOneRadio 标签中它正在工作,但是它会启用,即是和否。

我用简单的html尝试过这个东西,它就像魅力一样。但我需要与JSF合作。有人可以帮忙。

1 个答案:

答案 0 :(得分:2)

您可以在<h:selectOneRadio>发出onclick事件,然后决定在javascript函数中显示哪些弹出窗口。我尝试了下面的代码并且有效:

XHTML:

<h:form>
        <h:selectOneRadio onclick="showPopUp(this.value)">Select:
            <f:selectItem itemValue="y" itemLabel="Yes" />
            <f:selectItem itemValue="n" itemLabel="No" />
        </h:selectOneRadio> 
    </h:form>

JS:

function showPopUp(type) {
    //console.log(type);
    switch( type) {
        case 'y' : alert('pop up y!');  <--- call your function here for pop A
                   break;
        case 'n' : alert('pop up n!');  <--- call your function here for pop B
                   break;
    }   
}