【问题标题】:Passing JSF bean values to javascript function [duplicate]将JSF bean值传递给javascript函数[重复]
【发布时间】:2019-09-27 00:35:20
【问题描述】:

在 JSF 页面我下面的代码:

<h:dataTablevalue="#{rulesCntrl.getTblStati()}" var="stato"
  rendered="rdrGroupTable(
  #{rule.actuatorModule.model.type},
  #{rule.funzione.chiave})">

其中 type 和 chiave 是两个整数。 我想将这些数字传递给以下 javascript 函数:

<script type='text/javascript'>
  function rdrGroupTable(moduleType, ruleFunction) {
    if((moduleType === 97) && (ruleFunction === 1)){
      return true;
    }
    return false;
  }
</script>

但我收到消息: 跟踪错误 [行:24] 实体名称必须紧跟在实体引用中的“&”之后。

请帮忙? 多梅尼科

【问题讨论】:

  • Stefan,目前解决方案是您建议的解决方案,但新版本(客户端)的目的是减少网络流量,最重要的是加快响应速度。感谢您的贡献
  • 通过使用 ajax 和部分提交来减少网络流量。将事物移动到纯客户端会带来安全风险并使应用程序更加复杂。
  • 顺便说一句,rendered 是一个在服务器端评估的属性,当 HTML 被渲染时。此时您不能使用任何 javascript。

标签: javascript jsf el


【解决方案1】:

我建议你把逻辑放在你的 bean 中。在 JSF 页面中:

... rendered="#{rulesCntrl.isRdrGroupTable(rule.actuatorModule.model.type, rule.funzione.chiave)}" ...

在 RulesCntrl.java 中:

public boolean isRdrGroupTable(int type, int chiave) {
    return moduleType === 97 && ruleFunction === 1;
}

【讨论】:

    猜你喜欢
    • 2015-01-07
    • 1970-01-01
    • 1970-01-01
    • 2014-12-23
    • 2017-02-07
    • 2012-03-10
    相关资源
    最近更新 更多