calling ajax function show error tUncaught TypeError: $ is not a function using jquery

calling ajax function show error tUncaught TypeError: $ is not a function using jquery

你好,当我使用这两个脚本时,我正在使用 jqgrid 和其他使用 ajax 的函数调用,然后一个脚本工作,一个不工作。 并在浏览器控制台中显示此错误。

屏幕截图

我尝试了很多方法来消除这个错误,但仍然无法消除这个错误。请任何专家告诉我问题是什么以及如何解决这个错误。

<script type="text/javascript" src="~/bower_components/jquery/dist/jquery.min.js"></script>
<script type="text/javascript" src="~/assets/jqgrid/js/jquery.jqgrid.min.js"></script>
<link href="~/assets/jqgrid/jquery-ui-1.12.1.custom/jquery-ui.min.css" rel="stylesheet" />
<script type="text/javascript" src="~/assets/jqgrid/jquery-ui-1.12.1.custom/jquery-ui.js"></script>


<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/free-jqgrid/4.14.1/css/ui.jqgrid.min.css">
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/free-jqgrid/4.14.1/jquery.jqgrid.min.js"></script>


 <script type="text/javascript">
        $.noConflict();
        var rowsToColor = [];
        jQuery(document).ready(function ($) {
            var $grid = $("#jqGrid");
            $grid.jqGrid({
                url: '@Url.Action("Ownsership")',
                datatype: 'json',
                postData: { Membership_ID: function () { return $("#mID").val(); } },
                jsonReader: {},
                colModel: [
                           { name: 'FileID', index: 'FileID', label: 'FILE ID', width: 3 },
                           { name: 'UnitNo', index: 'UnitNo', label: 'UNIT NO', width: 7 },
                           { name: 'TransDate', index: 'TransDate', label: 'TRANS DATE', width: 8 },
                           { name: 'Category', index: 'Category', label: 'FILE CATEGORY', width: 10 },
                           { name: 'Project', index: 'Project', label: 'PROJECT', width: 20 }
                ],
                additionalProperties: [],
                loadonce: true,
                navOptions: {
                    reloadGridOptions: { fromServer: true }
                },
                formEditing: {

                    closeOnEscape: true,
                    closeAfterEdit: true,
                    savekey: [true, 13],
                    reloadGridOptions: {

                        fromServer: true
                    }
                },
                viewrecords: true,
                height: 'auto',
                autowidth: true,
                rowNum: 100,
                rowList: [10, 20, 30, 50, 100, 500],

                rownumbers: true,

                sortname: "Name",
                sortorder: "desc"
            });
        });
    </script>
<script type="text/javascript">
    $(document).ready(function () {
        TotalFilesM();
        $("#Projectlist").change(function () {
            TotalFilesM();
        });

    });

    function TotalFilesM() {
       $.ajax({
            type: 'GET',
            url: '@Url.Action("mTotalFilesMember")',
            dataType: 'json',
            data: { PhaseID: $("#Projectlist").val() },
            success: function (mTotalMemberFiles) {
                $('#TotalFilesMember').html(mTotalMemberFiles);

            },
            error: function (ex) {
                var r = jQuery.parseJSON(response.responseText);
                alert("Message: " + r.Message);
            }
        });
        return false;
    }
</script>

在您的控制台中显示

~/bower_components/jquery/dist

在上面的路径中你没有jquery.min.js检查你保存你的jquery

的路径

如果您遇到 $ is not a function using jquery

的错误

尝试添加 Jquery 的在线 link 如果 Jquery 的在线 link 有效那么 (70%) times 就是你的 [=23] 的问题=]路径

您正在使用 $.noConflict(),这会删除 $ 的定义。之后,您需要使用 jQuery() 而不是 $().

您仍然可以在 jQuery(document).ready(function($) { ... }) 中使用 $。但是你的第二个 <script> 标签并没有这样做,它试图在顶层使用 $(document).ready()