gpt4 book ai didi

javascript - 如何在javascript中添加jsf组件?

转载 作者:行者123 更新时间:2023-11-28 14:04:14 27 4
gpt4 key购买 nike

是否可以使用 javascript 添加 JSF 组件?就我而言,在更改选择选项时,我需要显示不同的输入控件组合(如文本框)。我以为我可以使用元素和innerHTML属性来显示动态控件。但它似乎不起作用!!!

<h:selectOneMenu id="browseType" class="TextBlackNormal"
value="#{adminBean.browseType}" onchange="showDynamicBox(this);"
valueChangeListener="#{adminBean.theValueChanged}">
<f:selectItems value="#{adminBean.browseTypeList}" />
</h:selectOneMenu> &#160;&#160;&#160;</td>
<td>
<div id="dynamicBox" style="display:block"><h:inputText
class="TextBlackNormal" size="32" name="browseValue"
id="browseValue" value="#{adminBean.browseValue}" /></div>
</td>

JavaScript 代码:~~~~~~~~~~~~~~~~

  function showDynamicBox(selectObjj)
{
//alert('showDynamicBox ' +showDynamicBox);
if(selectObjj.options[selectObjj.selectedIndex].value=='IBD/Office/IP'
|| selectObjj.options[selectObjj.selectedIndex].value=='APA#' )
{
alert('just about to change');
document.getElementById("dynamicBox").innerHTML='<h:inputText class="TextBlackNormal" size="3" name="val1" id="val1" /> <h:inputText class="TextBlackNormal" size="3" name="val2" id="val2" /> <h:inputText class="TextBlackNormal" size="3" name="val3" id="val3" /> ';
alert(' --> ' +document.getElementById("dynamicBox").innerHTML);
}else{
alert('back to pavillion');
document.getElementById("dynamicBox").innerHTML='<h:inputText class="TextBlackNormal" size="32" name="browseValue" id="browseValue" value="#{adminBean.browseValue}" />';
}

}

最佳答案

Is it possible to add JSF Components using javascript?

不 - 这将是一场安全噩梦。

JSF 控件在服务器上运行(尽管可能会发出 JavaScript 以获得更丰富的客户端体验)。当服务器的 JSP 编译器将 JSP 转换为 Java 时,这些 h:foo 元素由服务器的 JSP 编译器解释。

JavaScript 在浏览器中运行。

我建议先说明您想要尝试并实现的目标,然后询问有关如何使用 JSF 实现这一目标的建议。

关于javascript - 如何在javascript中添加jsf组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2763499/

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