如何在ASP中通过传递Jquery数据获取Enum GetName.净MVC



我只是想通过c# Enum GetName从jquery传递int值返回一个名称。我该怎么做呢?我试过下面的代码。

                        success: function (data) {
                        $("#CourseStatics").empty();
                        $.each(data, function (i) {
                            var optionhtml = '<tr><td>' + data[i].CourseCode + '</td> <td>'
                                + data[i].CourseName + '</td><td>'
                                + @Enum.GetName(typeof(AllEnums.Semester), data[i].SemesterId)  + '</td><td>'
                                + data[i].TeacherName + '</td></tr>';
                            $("#CourseStatics").append(optionhtml);
                        });
                    }

您不能以这种方式将客户端变量传递给服务器端代码。但是你可以在javascript代码中定义一个对象,你可以用它来将int表示转换为name。

例如:

var map = {};
@foreach (var i in Enum.GetValues(typeof(AllEnums.Semester)))
{
   @:map['id_@((int)i)'] = '@i';            
}

和你的代码看起来像:

                    success: function (data) {
                    $("#CourseStatics").empty();
                    $.each(data, function (i) {
                        var optionhtml = '<tr><td>' + data[i].CourseCode + '</td> <td>'
                            + data[i].CourseName + '</td><td>'
                            + map['id_' + data[i].SemesterId]  + '</td><td>'
                            + data[i].TeacherName + '</td></tr>';
                        $("#CourseStatics").append(optionhtml);
                    });
                }

最新更新