2

.war は GlassFish v3 から提供されます。jspx から JavaScript ファイルを含めようとしています。

<script type="text/javascript" src="/base/interface/Service.js"></script>

http応答で次のようになります

<script src="/base/interface/Service.js" type="text/javascript" />

</script>問題は、タグを含める必要があることです。これが Chrome では機能するのに、Firefox や IE では機能しない理由だと思います。強制する方法<script></script>

更新:これが適切かどうかはわかりませんが、これが私のjspxファイルの始まりです

<jsp:root version="2.0"
      xmlns:jsp="http://java.sun.com/JSP/Page"
      xmlns:c="http://java.sun.com/jsp/jstl/core"
      xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
      xmlns:form="http://www.springframework.org/tags/form"
      xmlns:spring="http://www.springframework.org/tags"
      xmlns="http://www.w3.org/1999/xhtml">

    <jsp:output doctype-root-element="html"
            doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
            doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"/>
    <jsp:directive.page contentType="text/html" pageEncoding="UTF-8"/> 
...
4

4 に答える 4

4

私が使用<script ...><jsp:text> </jsp:text></script>し、それは終了タグを保持しました。これは醜いと思うので、誰かがもっと良い答えを持っているなら、私は間違いなく興味があります。

于 2010-01-13T17:16:39.970 に答える
3

残念ながら、jspx は空の要素を「最小化」することが知られています。レンダリングされた HTML にスペースを追加せずに最小化を防止する 1 つの方法は、コメントを挿入することです。例えば:

<script ...><!-- keep open/close tags --></script>

しかし、それはまだ醜いです。

于 2010-01-28T19:43:11.877 に答える
0

さらに別の醜い解決策:

<tag>${null}</tag>
于 2012-08-31T13:08:17.397 に答える
0

潜在的にクリーンな解決策は、正しい HTML を出力するカスタム taglib を作成することです。

<m:htmlScript type="text/javascript" src="/js/jquery-1.4.4.min.js"/>

生産:

<script type="text/javascript" src="/js/jquery-1.4.4.min.js">

もう 1 つの方法は、タグを CDATA にカプセル化することです。

<![CDATA[<script type="text/javascript" src="/js/jquery-1.4.4.min.js"></script>]]>

このトピックについては、こちらで詳しく説明しました: JSPX で有効な HTML を生成するには? (XHTML ではありません)

于 2011-01-09T14:40:23.073 に答える