调用ajax函数show error tUncaught TypeError:$不是使用jquery的函数

时间:2018-12-21 05:30:30

标签: javascript jquery ajax jqgrid

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

屏幕截图

screen shot

我尝试了很多方法来消除此错误,但仍然无法消除此错误。友善的专家告诉我问题出在哪里,如何解决这个错误。

<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>

2 个答案:

答案 0 :(得分:1)

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

您仍然可以在$内使用jQuery(document).ready(function($) { ... })。但是您的第二个<script>标记却不是这样做的,它会尝试在顶层使用$(document).ready()

答案 1 :(得分:0)

在您的控制台中显示

  

〜/ bower_components / jquery / dist

在上述路径中,您没有jquery.min.js检查保存jquery的路径

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

错误

如果Jquery的在线链接有效,请尝试添加Jquery的在线链接,然后(70%) times这是您的Jquery路径的问题