【问题标题】:javascript inside xhtml (Richfaces)xhtml 中的 javascript (Richfaces)
【发布时间】:2012-07-30 04:05:25
【问题描述】:

我正在尝试在 xhtml 中包含 jquery 和 jquery-ui 库。我听说richfaces 已经有jquery,但是jquery-ui 没有。我不知道如何包含它们。

除此之外,我还有另一个使用 jquery 和 jquery-ui 的 js 库。那么,我需要做些什么来导入这 3 个 js 源并在其中使用它们

<script type="text/javascript"> </script>

阻止?这些js文件必须放在哪里?

谢谢。

【问题讨论】:

    标签: jsf richfaces seam


    【解决方案1】:

    RichFaces 提供的资源被映射到短资源名称,例如 jquery.js

    所有资源的完整列表可以在组件 jar (richfaces-components-ui-4.x.y.Final.jar) 内名为 Static.properties 的文件中找到。

    META-INF/richfaces/staticResourceMapping/Static.properties中的一些行:

    jquery.js=org.richfaces.staticResource/4.x.y.Final/Static/jquery.js
    org.richfaces\:tooltip.js=org.richfaces.staticResource/4.x.y.Final/Static/org.richfaces/tooltip.js
    

    您可以查看资源及其资源名称和完整路径。另请注意,资源名称有带库名称和不带库名称 - 因此您必须将 library 属性与 outputScript 一起使用:

    <h:outputScript name="jquery.js" />
    <h:outputScript library="org.richfaces" name="tooltip.js" />
    

    在 jquery/... 之后包含自己的脚本。

    恕我直言,您永远不应该依赖资源导入,这是组件使用的副作用。

    【讨论】:

      【解决方案2】:

      RichFaces 4.x 确实捆绑了 jQuery。它可以通过资源名称jquery.js 使用,并且通常仅在某个 RichFaces 组件需要它时自动包含,但您也可以通过&lt;h:outputScript&gt; 显式包含它。

      至于你自己的JS文件,把它们放在公共网页内容的/resources文件夹中,照常使用&lt;h:outputScript&gt;即可。

      假设

      WebContent
       |-- resources
       |    |-- jquery-ui.js
       |    `-- yourscript.js
       :
      

      这里是你如何引用它(注意jquery.js 是由 RichFaces 提供的,而不是你自己提供的!)

      <h:head>
          ...
          <h:outputScript name="jquery.js" />
          <h:outputScript name="jquery-ui.js" />
          <h:outputScript name="yourscript.js" />
      </h:head>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-02-08
        • 2011-02-08
        • 1970-01-01
        • 2011-08-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-25
        相关资源
        最近更新 更多