代码之家  ›  专栏  ›  技术社区  ›  marcwebdude

基于OutputText值的ADF显示图像

  •  0
  • marcwebdude  · 技术社区  · 7 年前

    在我的ADF应用程序中,#attachmentTxt元素中的值作为布尔值从服务/数据库返回附件值。如果值返回true,我尝试显示activeImage对象,如果值返回false,则只显示空白。我仅限于使用标准Javascript,没有jQuery之类的外部语言。

    <af:outputText id="attachmentTxt" value="#{bean.attachment}" visible="false" />
    <af:activeImage id="attachmentImg" source="/images/icon.png"></af:activeImage>
    

    我正在寻找的一个不起作用的例子是:

    <af:resource type="javascript">
        function hasAttachment() {
            var att = document.getElementById("attachmentTxt");
            var attImg = document.getElementById("attachmentImg");
            if(att.value == 'true') {
                attImg.show();
            } else {
                attImg.hide();
            }
        }
    </af:resource>
    

    1 回复  |  直到 7 年前
        1
  •  1
  •   giftkugel    7 年前

    在我看来,您应该使用activeImage标记的“rendered”属性来决定是否显示图像。因此,没有必要使用JavaScript。ADF框架仅在值为true时渲染图像。

    <af:activeImage id="attachmentImg" source="/images/icon.png" rendered="{#bean.attachment}"></af:activeImage>