如何使用 JavaScript 获取 JSF selectBooleanCheckbox 的值?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/21183078/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-27 20:17:59  来源:igfitidea点击:

How to get a value of JSF selectBooleanCheckbox by using JavaScript?

javascriptjsf

提问by MrRavi

I save in my selectBooleanCheckbox only boolean values in a backingbean which named "bean". To set a label for this checkbox in my JSF xhtml page i′m using a JSF outputText component.

我在我的 selectBooleanCheckbox 中只保存名为“bean”的支持bean中的布尔值。为了在我的 JSF xhtml 页面中为这个复选框设置标签,我使用了一个 JSF outputText 组件。

Here is the JSF code (they are 2 checkboxes in this example):

这是 JSF 代码(在本例中它们是 2 个复选框):

<h:selectBooleanCheckbox class="extern" value="#{bean.booleanValue1}" />
<h:outputText value="My Labeltext1"/>

<h:selectBooleanCheckbox class="extern" value="#{bean.booleanValue2}" />
<h:outputText value="My Labeltext2"/>

Now i want to get the selected checkboxes with java script. I′m using the onselect event:

现在我想用 java 脚本获取选中的复选框。我正在使用 onselect 事件:

<h:selectBooleanCheckbox class="extern" value="#{bean.booleanValue1}" onselect="MyObject.update(this.options[this.selectedIndex].text);"/>
<h:outputText value="My Labeltext1"/>

<h:selectBooleanCheckbox class="extern" value="#{bean.booleanValue2}" onselect="MyObject.update(this.options[this.selectedIndex].text);"/>
<h:outputText value="My Labeltext2"/>

But this gets only the boolean values of the selected checkboxes. Is it possible to get the value of the outputText components? Is tehre any way to connect the output component with the selectBooleanCheckbox component?

但这仅获取所选复选框的布尔值。是否可以获取 outputText 组件的值?有没有办法将输出组件与 selectBooleanCheckbox 组件连接起来?

回答by MrRavi

You should give a unique ID to the components and then try getting these values in java script by their ID , Also you can use 'onclick' to call the java script method. for ex:

您应该给组件一个唯一的 ID,然后尝试通过它们的 ID 在 java 脚本中获取这些值,您也可以使用“onclick”来调用 java 脚本方法。例如:

<h:selectBooleanCheckbox id="firstBox" class="extern" value="#{bean.booleanValue1}"       onclick="update(this)"/>
<h:outputText id="firstOutput" value="My Labeltext1"/>

And your java script function would look something like this:

你的 java 脚本函数看起来像这样:

  function update(val){
         var box= document.getElementById("firstBox");
         var outPut = document.getElementById("firstOutput");
        var boxValue = box.value;
        var outPutValue = outPut.value;
 }