1

私はjQueryの初心者です。

netbeans には、すべての HTML ファイルが存在するjquery-1.7.2.jsがあります。JSF 2.0 プロジェクトを作成しています。

以下は私が持っているコードです

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:t="http://myfaces.apache.org/tomahawk"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      >
    <h:head>
        <title>Welcome to MySite.</title>
    </h:head>

    <script language="text/javascript" src="#{facesContext.externalContext.requestContextPath}/faces/jquery-1.7.2.js"></script>
    <script type="text/javascript">
        $(document).ready(function() {
            alert('I am here...');
            $("#table tr:last").after("<tr><td>some</td><td>content</td></tr>");
        });

    </script>

このコードでは、ドキュメントが読み込まれるたびにアラートが表示されるはずHi, I am here...でしたが、アラートが表示されていないと思います。

また、ソースを表示して をクリックするとjquery-1.7.2.js、開かれます。

アラートが表示されない理由はありますか?

更新 1

ここで提供されているチュートリアルに従っていますが、まだ運がありません。:(

4

3 に答える 3

1

ファイルの場所が悪いようです。jquery ファイルを Web アプリのどこに配置したか正確にはわかりませんが、リソース フォルダーの下のフォルダーに配置する必要があります。

resourcesの下にフォルダーを追加します。WebContent

そしてリソース内にjsフォルダーを作成します

次に、このようなファイルにアクセスします

 <h:outputScript name="js/jquery-1.7.2.js" target="head" />
于 2012-07-04T17:57:44.927 に答える
-2

私は、JSF がスクリプト タグを無視するように指示する XHTML 標準を強制している可能性があると考えています。スクリプト タグがレンダリングされているかどうかを確認しましたか?

私は、JSF を扱うときの最善の方法は、JSF のやり方で行うことであるという難しい方法を学びました。この場合、h:outputScript タグを使用します。

また、JavaScript を 1 ページだけで使用する場合でも、JavaScript を別の .js ファイルに入れることをお勧めします。ブラウザでのデバッグがはるかに簡単になります。

于 2012-07-04T18:29:24.953 に答える
-2

次の行についてよろしいですか: "#{facesContext.externalContext.requestContextPath}/faces/jquery-1.7.2.js" ? もし私があなたなら、ブラウザの URL を見て、その URL への相対パスを使用してコーディングし、jquery-1.7.2.js を指すようにします。別の可能なデバッグ方法は、現在のフォルダー (つまり、現在の .xhtml) に jquery-1.7.2.js のコピーを作成することです。その場合、スクリプト タグ行は src="./jquery-1.7.2 になります。 js". アラートが表示される場合、問題はその回線パスにあります。

于 2019-02-12T04:54:04.420 に答える