49

JavaScript/jQuery 関数を実行しようとすると、Firebugでエラーが発生します。

$ is not defined $(function()".

JavaScript コードは、 によって呼び出さcore.jsれ参照されるファイル内に配置されindex.phpます。このエラーの原因は何ですか?

JavaScript:

<script type="text/javascript">
    var formObject = {
        run : function(obj) {
            if (obj.val() === '') {
                obj.nextAll('.update').html('<option value="">----</option>').attr('disabled', true);
            } else {
                var id = obj.attr('id');
                var v = obj.val();
                jQuery.getJSON('/mod/update.php', { id : id, value : v }, function(data) {
                    if (!data.error) {
                        obj.next('.update').html(data.list).removeAttr('disabled');
                    } else {
                        obj.nextAll('.update').html('<option value="">----</option>').attr('disabled', true);
                    }
                });
            }
        }
    };

    $(function() {

        $('.update').live('change', function() {
            formObject.run($(this));
        });

    });
</script>

PHP/HTML

<html>
    <select name="main" id="category" class="update">
    <option value="">Select one</option>

        <? if (!empty($list)) { ?>
            <? foreach($list as $row) { ?>
                <option value="<?php echo $row['id']; ?>">
                    <? echo $row['name']; ?>
                </option>

            <? } ?>
        <? } ?>

    </select>
</html>
4

8 に答える 8

87

スクリプトで jQuery を使用できるようにしてはなりません。

これをファイルの先頭に追加します。

<script type="text/javascript" src="https://code.jquery.com/jquery-1.7.1.min.js"></script>

この問題は、jQuery/JavaScript ファイルが PHP/JSP/ASP ファイルに正しく追加されていないことに関連しています。これは外に出て、ソースから jQuery コードを取得します。それをダウンロードして、サーバー上でローカルに参照すると、より高速になります。

または、jQuery、GoogleCDN、または MicrosoftCDN に直接リンクすることもできます。

Web ページに jQuery を追加する方法

于 2012-05-28T03:52:03.490 に答える
6

試す:

(function($) {
    $(function() {
        $('.update').live('change', function() {
            formObject.run($(this));
        });
    });
})(jQuery);

この方法を使用すると、グローバル変数 jQuery がクロージャ内の「$」にバインドされるようになります。以下を挿入して、jQuery がページに適切にロードされていることを確認してください。

<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script>

「 http://code.jquery.com/jquery-1.7.1.min.js」を、ページ コンテキスト内で jQuery ソースが配置されているパスに置き換えます。

于 2012-05-28T04:12:01.720 に答える
4

ページに jQuery ライブラリを含める必要があります。

ここから jQueryをダウンロードして自分でホストするか、Google や Microsoft などの外部ソースからリンクすることができます。

Google の:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>

マイクロソフトの:

<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery/jquery-1.6.2.min.js">

于 2012-05-28T03:54:13.333 に答える
0

MVC と Razor cshtml で Asp.Net Core 2.2 を使用しています。view.cshtml に以下を追加するために必要なレイアウト ページで JQuery が参照されています。

@section Scripts {
$script-here
}
于 2019-10-03T06:17:00.313 に答える