2013-09-24 79 views
0

我是ASP.NET MVC和jQuery的新手,我试图将下面的内容关闭。.get List <string> from controller method and display

试图得到这个List<string>并显示它。在GET响应中,我有以下System.Collections.Generic.List 1 [System.String]`在这种情况下'lable1'也包含。

我在做什么错?我该怎么办?

在控制器:

public List<string> Search(string input, SearchBy searchBy) 
{   
     Manager manger = new Manager(); 
     List<string> MyList = manger.GetData(input, searchBy);               
     return MyList; 
} 

在视图:

$('#ii-search').click(function() { 
     var number = $('#input').val(); 
     var typeEn = 'CCC'; 

     $.ajax({ 
      url: '@Url.Action("Search", "InitiateInspection")', 
      data: { input: number, searchBy: typeEn }, 
      cache: false, 
      success: function (data) { 

       for (var i = 0; i < 4; i++) { 

        $('#lable1').html(data[i]); 
       }     
      } 
     }); 

感谢

回答

3

你想返回一个JsonResult。所以,在你的控制器,试试这个:

public JsonResult Search(string input, SearchBy searchBy) 
    {   
     Manager manger = new Manager(); 
     List<string> MyList = manger.GetData(input, searchBy);               
     return Json(MyList, JsonRequestBehavior.AllowGet); 
    } 

从本质上讲,JSON的功能将您的列表转化为您JSON对象。

+0

非常感谢你。它的作品:) – Georgi

+0

@ user2382835没问题,很高兴我可以帮忙!请接受答案。 – kenttam

0

正是为解释kenttam并在您的视图执行以下操作:

$('#ii-search').click(function() { 
    var number = $('#input').val(); 
    var typeEn = 'CCC'; 

    $.ajax({ 
     url: '@Url.Action("Search", "InitiateInspection")', 
     dataType: 'json', 
     data: { input: number, searchBy: typeEn }, 
     cache: false, 
     success: function (data) { 
      for (var i = 0; i < data.length; i++) { 

       $('#lable1').html(data[i]); 
      }     
     } 
    }); 
}); 
+0

非常感谢,非常有帮助:) – Georgi

相关问题