-1

我试图通过我的 JSF facelet Javascript 调用从托管 bean 中检索属性值,如下所示,但我没有从托管 bean 中获取值。

我的托管 bean 也使用 getter 和 setter 设置了 isPreviewScreen = false 。有人可以帮忙吗?

两个警报都没有在下面的代码中给我一个值。

<script type="text/javascript">
function #{facesContext.externalContext.response.namespace}verifyStatus(data){
  alert("#{contactBean.isPreviewScreen}");
  if (data.isPreviewScreen){
    alert(data.isPreviewScreen);
     $("##{facesContext.externalContext.response.namespace}previewScreenHeaderAlert").dialog();
  }else{
     $("##{facesContext.externalContext.response.namespace}previewScreenHeaderArea").show();
   }
};
</script>

这是我在表单中的内容:

<h:commandLink action="#{contactBean.loadPreviewScreenContents}">
                                <h:outputText title="#{crs.dateTime}" value="#{crs.dateTime}">
                                    <f:convertDateTime pattern="MM/dd/yyyy hh:mm a" type="date" />

                                </h:outputText>
                                <f:setPropertyActionListener target="#{contactBean.crs}" value="#{crs}" />
                                <f:ajax render=":form1:previewScreenHeader" onevent="#{facesContext.externalContext.response.namespace}verifyStatus"/>

                            </h:commandLink>
4

2 回答 2

1

改成data.isPreviewScreen这样#{data.isPreviewScreen}

<script type="text/javascript">
function #{facesContext.externalContext.response.namespace}verifyStatus(data){
  alert("#{contactBean.isPreviewScreen}");
  if (#{data.isPreviewScreen}){
    alert(#{data.isPreviewScreen});
     $("##{facesContext.externalContext.response.namespace}previewScreenHeaderAlert").dialog();
  }else{
     $("##{facesContext.externalContext.response.namespace}previewScreenHeaderArea").show();
   }
};
</script>
于 2013-05-03T21:50:09.867 回答
0

没有。这是不正确的......它撕掉了里面的所有 jQuery 功能。我通过从 bean 检索 bean 属性进行了同样的尝试,它起作用了:

function #{facesContext.externalContext.response.namespace}verifyStatus(data){
  if ("#{contactBean.previewScreen}"==false){
  $("##{facesContext.externalContext.response.namespace}previewScreenHeaderAlert").dialog();
  }else{
$("##{facesContext.externalContext.response.namespace}previewScreenHeaderArea").show();
  }
};
于 2013-05-06T21:27:10.330 回答