C# 如何使数据表中的dropdownlist不在表外?

C# 如何使数据表中的dropdownlist不在表外?,c#,asp.net-mvc,datatable,C#,Asp.net Mvc,Datatable,我有dropdownlist,但它在我的DataTable之外,需要在里面,但我正在努力实现这一点,并查看下面的代码以了解逻辑。请帮助我改进此逻辑以提高用户可读性。这种逻辑的原因是我想要我的dropdownlist,它应该允许用户从给定数据中选择选项,而不是从该记录列表之外公开的数据,我希望我能够准确理解我的目标 // Drop downlist for WhoAttended. public enum Attendees { Engineers,

我有dropdownlist,但它在我的DataTable之外,需要在里面,但我正在努力实现这一点,并查看下面的代码以了解逻辑。请帮助我改进此逻辑以提高用户可读性。这种逻辑的原因是我想要我的dropdownlist,它应该允许用户从给定数据中选择选项,而不是从该记录列表之外公开的数据,我希望我能够准确理解我的目标

 // Drop downlist for WhoAttended.

    public enum Attendees
    {
        Engineers,
        Technicians,
        Inspectors
    }

// View cshtml

<link href="//cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.2.6/semantic.min.css" rel="stylesheet" />
<link href="https://cdn.datatables.net/1.10.15/css/dataTables.semanticui.min.css" rel="stylesheet" />

@section scripts{

      <script src="//cdn.datatables.net/1.10.15/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.10.15/js/dataTables.semanticui.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.2.6/semantic.min.js"></script>

    <script>

        $(document).ready(function () {

            $("#EventsManagementsTable").DataTable({

                "columnDefs": [
                { "width": "5%", "targets": [0] }, 
                { "className": "text-center custom-middle-align" ,"targets":[0, 1, 2, 3, 4, 5, 6] },
                ],

                "serverSide": "true",
                "order":[0,"asc"], 
                "processing": "true",
                "language": {
                    "processing": "processing...... please wait"
                },
                "ajax": {
                    "url": "/Dashboard/GetData",
                    "type": "POST",
                    "datatype": "JSON"

                },
                "columns": [
                    {"data": "TrainingType", "name": "TrainingType"},
                    { "data": "TrainingDescription", "name": "TrainingDescription"},
                    { "data": "Price", "name": "Price"},
                    { "data": "Venue", "name": "Venue"},
                    { "data": "Facilitator", "name":"Facilitator" },
                    { "data": "WhoAttend", "name" : "WhoAttend" },
                    {"data": "RSVP", "name":"RSVP" },
                ]


            });

        });







    </script>
//我目前正在做什么来获取DataTable上的dropdownlist

 <script>

        $(document).ready(function () {

            $("#EventsManagementsTable").DataTable({

                "columnDefs": [
                { "width": "5%", "targets": [0] }, 
                { "className": "text-center custom-middle-align" ,"targets":[0, 1, 2, 3, 4, 5, 6] },
                ],

                "serverSide": "true",
                "order":[0,"asc"], 
                "processing": "true",
                "language": {
                    "processing": "processing...... please wait"
                },
                "ajax": {
                    "url": "/Dashboard/GetData",
                    "type": "POST",
                    "datatype": "JSON",

                },

                "columns": [
                    {"data": "TrainingType", "name": "TrainingType"},
                    { "data": "TrainingDescription", "name": "TrainingDescription"},
                    { "data": "Price", "name": "Price"},
                    { "data": "Venue", "name": "Venue"},
                    { "data": "Facilitator", "name":"Facilitator" },
                    { "data": "WhoAttend", "name" : "WhoAttend" },
                    { "data": "RSVP", "name": "RSVP" },

                    "columns":[
                    {

                        "data": "WhoAttend",
                        "name": "WhoAttend",
                        "render": function (value) {
                            return $("<select/>")
                                .addClass("form-control")
                                .attr("name", "WhoAttend")
                                .append($("<option/>").text("Engineers"))
                                .append($("<option/>").text("Inspectors"))
                                .append($("<option/>").text("Technicians"))
                                .val(value)
                                .html();
                        }

                    }


                ],

                ]

            });

        });

Hi在“列”部分添加此代码以添加自定义HTML元素:

"columns": [
                {"data": "TrainingType", "name": "TrainingType"},
                { "data": "TrainingDescription", "name": "TrainingDescription"},
                { "data": "Price", "name": "Price"},
                { "data": "Venue", "name": "Venue"},
                { "data": "Facilitator", "name":"Facilitator" },
                { "data": "WhoAttend", "name" : "WhoAttend" },
                {"data": "RSVP", "name":"RSVP" }
                   {
                className: "center",
                defaultContent:`<select name='slcCustom' class='custom' >
                  <option value='default'>select something</option>
                  <option value='1'>Apple</option>
                  </select>`
              }
               ]
这是一张你可以查的支票


希望对我有所帮助

我正在使用我的示例,我得到了错误行92 TypeError:n[m]未定义当我使用className时,该列在我这边创建了一个bug,并且不知道为什么。@Luks10Mkontwana你能包括一个正在运行的代码吗?