1

次の行entire pageの定義は何ですか?

ページ全体がPHPinclude()またはrequire()関数を介して含まれている場合、タグ内からjQueryスクリプトファイルを呼び出すことは何らかの理由で機能しないため、そのスクリプトコードを<body>タグ内ではなくタグ内に配置するようにしてください。<head>

jQueryコードの設定で問題が発生しました。しかし、私はそれを中に入れてHEAD次のコードで動作させることができました

#1コード

$(document).ready(function(){     
    --- code here---- 
});

機能を動作させることができませんでした。私はそれらをコード#1の内外に持っていました。以下はその一例です。

#2コードが機能しない

    function notEmpty() {                        
        //put this in a function and call it when the user tries to submit
        var tags = document.getElementById('tags').value;
        if(tags == '' || tags == null) {         
            alert('Please enter one or more tags');
            return false;
        }
        return true;
    }    

私はPHPを使用して、index.phpに次のコードでタグHTML、HEAD、/ HEAD、およびBODYを含めています。

#3 HTML、HEAD、bodyタグをソースするコード

 include ( './official_content/html_head_body.php' );
4

2 に答える 2

3

私はその声明が疑わしいと思います。他のタグと同様に、ドキュメントの<script>jQueryのタグを含めて問題が発生したことはありません。ブラウザは、PHPが行ったことを認識できません。単なる虚偽表示だと思います。<head><script>

あなたの特定のコードに対処するために、あなたが#1で書いたことは完全に正しいです。関数を渡すと$(document).ready()、ドキュメントの「準備ができた」ときに実行するコードを指定できます(つまり、画像やスタイルシートなどの外部リソースをロードしなくても、ページ自体がロードされたときに実行できます。待たなければならない)。

#2に関しては、その関数はjQueryをまったく使用していません。組み込みのJavaScript関数のみを使用しています。id="tags"そうは言っても、フォーム要素を見つけて、その要素に空のが含まれている場合はアラートボックスを表示することで、正しく機能するはずvalueです。この関数をどのように呼び出しましたか?jQueryの世界では、次のようにします。

$("#id-of-your-form").submit(notEmpty);

notEmpty()次のように、jQueryを活用するように関数を書き直すこともできます。

function notEmpty() {{
    var tags = $("#tags").val();
    if (tags == '' || tags == null) {
        alert('Please enter one or more tags');
        return false;
    }
    return true;
}

繰り返しになりますが、その関数の残りの部分は現在jQueryに接続しています。そこにあるのと同じように問題ありません。

最後に、#3はjQueryとは無関係です。これは、処理がPHP内で行われているため、JavaScriptは完全に認識されないままです。

于 2009-08-21T21:17:14.480 に答える
2

jQueryソースをhtml_head_body.phpファイルに入れ、関数を「コンテンツ」phpファイルに追加します。

<html>
<head>
   <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script>
</head>
<body>
   <script type="text/javascript">
     $(document).ready(function(){

       function notEmpty() {                        
         //put this in a function and call it when the user tries to submit
         var tags = document.getElementById('tags').value;
         if(tags == '' || tags == null) {         
            alert('Please enter one or more tags');
            return false;
         }
         return true;
       }

     });
   </script>         
</body>
</html>
于 2009-08-21T21:19:46.720 に答える