为什么';在另一个视图asp.net mvc中加载jquery脚本?

为什么';在另一个视图asp.net mvc中加载jquery脚本?,jquery,asp.net-mvc,Jquery,Asp.net Mvc,我正在我的布局视图中写一个网站,我添加了一些必要的链接,比如jquery、bootstrap等等。。。在另一个视图中,我想使用“DataTable”库,但它本身找不到jquery库。此外,我在_布局视图的末尾添加了@RenderSection(“scripts”,required:false)。我花了很多时间,但找不到任何解决方案 我弄错了 Uncaught TypeError: Cannot read property 'style' of undefined at Ha (jquer

我正在我的布局视图中写一个网站,我添加了一些必要的链接,比如jquery、bootstrap等等。。。在另一个视图中,我想使用“
DataTable
”库,但它本身找不到
jquery
库。此外,我在_布局视图的末尾添加了
@RenderSection(“scripts”,required:false)
。我花了很多时间,但找不到任何解决方案

我弄错了

Uncaught TypeError: Cannot read property 'style' of undefined
    at Ha (jquery.dataTables.min.js:62)
    at ha (jquery.dataTables.min.js:48)
    at e (jquery.dataTables.min.js:93)
    at HTMLTableElement.<anonymous> (jquery.dataTables.min.js:93)
    at Function.each (jQuery-2.2.0.min.js:2)
    at n.fn.init.each (jQuery-2.2.0.min.js:2)
    at n.fn.init.m [as dataTable] (jquery.dataTables.min.js:82)
    at n.fn.init.h.fn.DataTable (jquery.dataTables.min.js:167)
    at HTMLDocument.<anonymous> (Index:537)
    at i (jQuery-2.2.0.min.js:2)
Uncaught TypeError:无法读取未定义的属性“style”
在Ha(jquery.dataTables.min.js:62)
在ha(jquery.dataTables.min.js:48)
at e(jquery.dataTables.min.js:93)
在HTMLTableElement*@

کاربران 用户ID 用户名 名字 姓氏 性别 电子邮件 活跃的 电话号码 地址 ویرایش کاربران '; } }, { “数据”:“用户ID”,“宽度”:“50px”,“渲染”:函数(数据){ 返回“”; } } ] }) $('.tablecontainer')。在('click','a.popup',函数(e)上{ e、 预防默认值(); OpenPopup($(this.attr('href')); }); 函数OpenPopup(页面URL){ 变量$pageContent=$(''); $pageContent.load(pageUrl,函数(){ $('popupForm',$pageContent).removeData('validator'); $('popupForm',$pageContent).removeData('unobtrusiveValidation'); $.validator.unobtrusive.parse('form'); }); $dialog=$('') .html($pageContent) .对话({ 可拖动:错误, 自动打开:错误, 可调整大小:false, 模型:对, 标题:“弹出对话框”, 身高:550, 宽度:600, 关闭:函数(){ $dialog.dialog('destroy').remove(); } }) $('.popupindow')。关于('submit','#popupForm',函数(e){ var url=$('#popupForm')[0]。操作; $.ajax({ 类型:“POST”, url:url, 数据:$('#popupForm')。序列化(), 成功:功能(数据){ if(数据状态){ $dialog.dialog('close'); 重载(); } } }) e、 预防默认值(); }) $dialog.dialog('open'); } }); }
=====================================

@model  IEnumerable<Dentistry.Areas.ViewModels.UserViewModel>


@{
    ViewBag.Title = "مدیریت کاربران";
}

@*<h2>مدیریت کاربران</h2>*@

<head>
    <link rel="stylesheet" href="https://cdn.datatables.net/1.10.15/css/dataTables.bootstrap.min.css" />

</head>


<div class="row">
    <div class="col-md-6">
        @*<a type="button" class="btn  btn-success btn-flat btn-md" href="@Url.Action("Create","Users")"><span class="fa fa-plus"></span>  افزودن کاربر جدید </a>*@
        <a type="button" class="btn  btn-success btn-flat btn-md" href="/users/create/0"><span class="fa fa-plus"></span>  افزودن کاربر جدید </a>
    </div>
</div>
<br />

<div class="row">
    <div class="col-xs-12">
        <div class="box">
            <div class="box-header">
                <h3 class="box-title">کاربران</h3>
                <div class="box-tools">
                    <div class="input-group input-group-sm" style="width: 150px;">
                        <input type="text" name="table_search" class="form-control pull-right" placeholder="Search">
                        <div class="input-group-btn">
                            <button type="submit" class="btn btn-default"><i class="fa fa-search"></i></button>
                        </div>
                    </div>
                </div>
            </div>
            <!-- /.box-header -->
            <div class="box-body table-responsive no-padding tablecontainer">

                <table class="table table-striped table-bordered dt-responsive nowrap direction" id="myDatatable">
                    <thead>
                        <tr>
                            <th>UserId</th>
                            <th>UserName </th>
                            <th>FirstName </th>
                            <th>LastName</th>
                            <th>Gender</th>
                            <th>Email</th>
                            <th>IsActive</th>
                            <th>PhoneNumber</th>
                            <th>Address</th>

                        </tr>
                    </thead>


                </table>
            </div>
            <!-- /.box-body -->
        </div>
        <!-- /.box -->
    </div>
</div>

<div class="modal fade" id="edit" tabindex="-1" role="dialog" aria-labelledby="edit" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true"><span class="glyphicon glyphicon-remove" aria-hidden="true"></span></button>
                <h4 class="modal-title custom_align" id="Heading">ویرایش کاربران</h4>

                <div class="modal-body" id="editBody">


                </div>
            </div>

            <div class="modal-footer ">
                <a class="btn btn-warning btn-flat btn-lg" style="width: 100%;"><span class="glyphicon glyphicon-ok-sign"></span> ویرایش کاربر</a>
            </div>
        </div>
        <!-- /.modal-content -->
    </div>
    <!-- /.modal-dialog -->
</div>



<!-- Modal -->
<div class="modal fade" id="delete" tabindex="-1" role="dialog" aria-labelledby="delete" aria-hidden="true">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
                <h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
            </div>
            <div class="modal-body">
                ...
            </div>
            <div class="modal-footer ">
                <button type="button" class="btn btn-success"><span class="glyphicon glyphicon-ok-sign"></span> Yes</button>
                <button type="button" class="btn btn-default" data-dismiss="modal"><span class="glyphicon glyphicon-remove"></span> No</button>
            </div>
        </div>
    </div>
</div>


@section scripts{
<script src="~/scripts/jquery.validate.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validation-unobtrusive/3.2.6/jquery.validate.unobtrusive.min.js"></script>
<script src="https://cdn.datatables.net/1.10.15/js/jquery.dataTables.min.js"></script>
<script>

    $(document).ready(function () {

        var oTable = $("#myDatatable").DataTable({

            "ajax":
            {
                "url": '/users/GetUsers',
                "type": "get",
                "datatype": "json"
            },

            "columns": [
                { "data": "UserId", "autoWidth": true },
                { "data": "UserName", "autoWidth": true },
                { "data": "FirstName", "autoWidth": true },
                { "data": "LastName", "autoWidth": true },
                { "data": "Gender", "autoWidth": true },
                { "data": "Email", "autoWidth": true },
                { "data": "IsActive", "autoWidth": true },
                { "data": "PhoneNumber", "autoWidth": true },
                { "data": "Address", "autoWidth": true },
                {
                    "data": "UserId", "width": "50px", "render": function (data) {
                        return '<a class="popup" href="/users/Edit/' + data + '">Edit</a>';
                    }
                },
                {
                    "data": "UserId", "width": "50px", "render": function (data) {
                        return '<a class="popup" href="/users/delete/' + data + '">Delete</a>';
                    }
                }
            ]

        })
        $('.tablecontainer').on('click', 'a.popup', function (e) {
            e.preventDefault();
            OpenPopup($(this).attr('href'));
        });

        function OpenPopup(pageUrl) {
            var $pageContent = $('<div/>');
            $pageContent.load(pageUrl, function () {

                $('#popupForm', $pageContent).removeData('validator');
                $('#popupForm', $pageContent).removeData('unobtrusiveValidation');
                $.validator.unobtrusive.parse('form');

            });

            $dialog = $('<div class="popupWindow" style="overflow:auto"></div>')
                .html($pageContent)
                .dialog({
                    draggable: false,
                    autoOpen: false,
                    resizable: false,
                    model: true,
                    title: 'Popup Dialog',
                    height: 550,
                    width: 600,
                    close: function () {
                        $dialog.dialog('destroy').remove();
                    }
                })

            $('.popupWindow').on('submit', '#popupForm', function (e) {
                var url = $('#popupForm')[0].action;
                $.ajax({
                    type: "POST",
                    url: url,
                    data: $('#popupForm').serialize(),
                    success: function (data) {
                        if (data.status) {
                            $dialog.dialog('close');
                            oTable.ajax.reload();
                        }
                    }
                })

                e.preventDefault();
            })

            $dialog.dialog('open');

        }
    });
</script>
}
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>پنل مدیریت - دندان پزشکی</title>
    <!-- Tell the browser to be responsive to screen width -->
    <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
    <!-- Bootstrap 3.3.6 -->
    <link rel="stylesheet" href="~/Areas/Admin/bootstrap/css/bootstrap.min.css">
    <!-- Font Awesome -->
    @*<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.5.0/css/font-awesome.min.css">*@
    <link rel="stylesheet" href="https://use.fontawesome.com/c7442c63ea.css">
    <!-- Ionicons -->
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/ionicons/2.0.1/css/ionicons.min.css" />
    <!-- Theme style -->
    <link rel="stylesheet" href="~/Areas/Admin/dist/css/AdminLTE.min.css">
    <!-- AdminLTE Skins. Choose a skin from the css/skins
         folder instead of downloading all of them to reduce the load. -->
    <link rel="stylesheet" href="~/Areas/Admin/dist/css/skins/_all-skins.min.css">
    <!-- iCheck -->
    <link rel="stylesheet" href="~/Areas/Admin/plugins/iCheck/flat/blue.css">
    <!-- Morris chart -->
    <link rel="stylesheet" href="~/Areas/Admin/plugins/morris/morris.css">
    <!-- jvectormap -->
    <link rel="stylesheet" href="~/Areas/Admin/plugins/jvectormap/jquery-jvectormap-1.2.2.css">
    <!-- Date Picker -->
    @*<link rel="stylesheet" href="/plugins/datepicker/datepicker3.css">*@
    <!-- Daterange picker -->
    <link rel="stylesheet" href="~/Areas/Admin/plugins/daterangepicker/daterangepicker-bs3.css">
    <!-- bootstrap wysihtml5 - text editor -->
    <link rel="stylesheet" href="~/Areas/Admin/plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.min.css">
    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
</head>

    <!-- ./wrapper -->
    <!-- jQuery 2.2.0 -->
    <script src="~/Areas/Admin/plugins/jQuery/jQuery-2.2.0.min.js"></script>
    <!-- jQuery UI 1.11.4 -->
    <script src="~/Areas/Admin/dist/js/jquery-ui.min.js"></script>
    <!-- Resolve conflict in jQuery UI tooltip with Bootstrap tooltip -->
    <script>
        $.widget.bridge('uibutton', $.ui.button);
    </script>
    <!-- Bootstrap 3.3.6 -->
    <script src="~/Areas/Admin/bootstrap/js/bootstrap.min.js"></script>
    <!-- Morris.js charts -->
    <script src="~/Areas/Admin/dist/js/raphael-min.js"></script>
    @*<script src="/plugins/morris/morris.min.js"></script>*@
    <!-- Sparkline -->
    <script src="~/Areas/Admin/plugins/sparkline/jquery.sparkline.min.js"></script>
    <!-- jvectormap -->
    <script src="~/Areas/Admin/plugins/jvectormap/jquery-jvectormap-1.2.2.min.js"></script>
    <script src="~/Areas/Admin/plugins/jvectormap/jquery-jvectormap-world-mill-en.js"></script>
    <!-- jQuery Knob Chart -->
    <script src="~/Areas/Admin/plugins/knob/jquery.knob.js"></script>
    <!-- daterangepicker -->
    <script src="~/Areas/Admin/dist/js/moment.min.js"></script>
    @*<script src="~/Areas/Admin/plugins/daterangepicker/daterangepicker.js"></script>*@
    <!-- datepicker -->
    <script src="~/Areas/Admin/plugins/datepicker/bootstrap-datepicker.js"></script>
    <!-- Bootstrap WYSIHTML5 -->
    <script src="~/Areas/Admin/plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.all.min.js"></script>
    <!-- Slimscroll -->
    <script src="~/Areas/Admin/plugins/slimScroll/jquery.slimscroll.min.js"></script>
    <!-- FastClick -->
    <script src="~/Areas/Admin/plugins/fastclick/fastclick.js"></script>
    <!-- AdminLTE App -->
    <script src="~/Areas/Admin/dist/js/app.min.js"></script>
    <!-- AdminLTE dashboard demo (This is only for demo purposes) -->
    @*<script src="~/Areas/Admin/dist/js/pages/dashboard.js"></script>*@
    <!-- AdminLTE for demo purposes -->
    <script src="~/Areas/Admin/dist/js/demo.js"></script>
    @RenderSection("scripts", required: false)
</body>
</html>

پنل مدیریت - دندان پزشکی
@**@
@**@
$.widget.bridge('uibutton',$.ui.button);
@**@
@**@
@**@
@RenderSection(“脚本”,必需:false)

您的视图必须继承
\u布局

您可以使用以下代码指定“在视图中继承”页面:

@{
    Layout = "_Layout";
    ViewBag.Title = "مدیریت کاربران";
}
或者,您可以在
视图
文件夹中创建
\u ViewStart.cshtml
,其中包含以下内容:

@{
    Layout = "_Layout";
}
区别在于第一种方法不能为每个视图页设置不同的布局,但第二种方法为视图文件夹中的所有视图页设置布局


在这之后,您需要
@RenderBody()
\u Layout.cshtml
中,如果您的视图必须显示@Rise,我得到了这个错误,未捕获类型错误:无法读取HTMLTableElement中Ha(jquery.dataTables.min.js:62)中Ha(jquery.dataTables.min.js:48)中e(jquery.dataTables.min.js:93)中未定义的属性“style”。(jquery.dataTables.min.js:93)在Function.each(jquery-2.2.0.min.js:2)在n.fn.init.each(jquery-2.2.0.min.js:2)在n.fn.init.m[作为数据表](jquery.dataTables.min.js:82)在n.fn.init.h.fn.dataTable(jquery.dataTables.min.js:167)在HTMLDocument。(索引:537)在i(jQuery-2.2.0.min.js:2)@Rise,但它继承了布局。因此,为了确保,我在另一个视图中添加了此代码。Layout=“~/Areas/Admin/Views/Shared/_AdminLayout.cshtml”;但这对我的视图没有任何影响。根据您的图片,如果您有问题,请仅检查表中显示的数据,然后检查模型IEnumerable是否与控制器中的数据一起正确提供。希望能有所帮助you@KarthikElumalai,是的,确切地说,我的数据有问题。事实上,我使用了identity进行授权,正如您所知,identity使用了“guid”类型作为主键。当我要从控制器获取数据时,“datatable”的UserId有问题,因为UserId是“guid”类型.我不知道你有什么解决办法吗?@KarthikElumalai,我正在提出一个关于