jquery
  • asp.net
  • 2016-08-13 2 views 0 likes 
    0

    jquery.Howからint値を渡してC#Enum GetNameで名前を返すだけですか?次のコードを試してみました。ASP.NET MVCでJQueryデータを渡すことによってEnum GetNameを取得する方法

         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); 
             }); 
            } 
    

    答えて

    1

    クライアント側の変数をそのようにサーバー側のコードに渡すことはできません。 しかし、あなたはjavascriptコードでオブジェクトを定義して、int表現を名前に変換することができます。例えば

    var map = {}; 
    @foreach (var i in Enum.GetValues(typeof(AllEnums.Semester))) 
    { 
        @:map['[email protected]((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); 
            }); 
           } 
    
    関連する問題