2013-11-23 55 views
2

我搜索解決方案,我的問題在搜索引擎和stackoverflow.I找到很多答案,但沒有任何對我沒有幫助。 這裏是我的控制器:ASP.NET MVC從控制器獲取列表與ajax

[HttpGet] 
    public JsonResult Get() 
    { 
     var cl = new List<Category>(); 
     cl.Add(new Category() 
      { 
       Name = "C#" 
      }); 
     cl.Add(new Category() 
      { 
       Name = "MVC" 
      }); 
     return Json(cl.ToList(),JsonRequestBehavior.AllowGet); 
    } 

和類別類如下:

public class Category 
{ 
    public string Name { get; set; } 

} 

在我看來,我想列出的數據的每個項目。

<script type="text/javascript"> 
    $(document).ready(function() { 
     $.ajax({ 
      type: "GET", 
      url: '@Url.Action("Get","Category")', 
      contentType: "application/json;charset=utf-8", 
      data: { a: "testing" }, 
      dataType: "json", 
      success: function(data) { 
       //<ul> 
        //<li>C#</li> 
//<li>MVC</li> 
      }, 
      error: function() { alert('error....'); } 
     }); 
    }); 

</script> 

我該怎麼辦?

+3

問題是...?任何錯誤?如果你調試了什麼發生?我在這裏看到的一件事是,你傳遞一個參數{a:「testing」},你的Get()動作沒有。 – Romias

+0

請不要任何錯誤。在我的視圖代碼中,'Succes:function(data){//}'這裏的數據返回列表。我想將這個列表顯示爲'

' – Zamir10

+1

實際開發者需要特殊的js圖書館建立這種情況,例如kendoi ui:http://www.youtube.com/watch?v=PkeBZkqVcrs。其次,你必須使用js來完成它。 –

回答

3

你可以使用這樣的短getJSON

var getUrl = '@Url.Action("Get")'; 
var resultDiv = $('#result'); 
$.getJSON(getUrl, data: { a: "testing"}, function (data) { 
           resultDev.append('<ul>') 
             $.each(data, function (index, item) { 
          resultDiv.append($('<li/>', { text: item.name })); 
           }); 
          }); 

沒有看到您的標記我已經輸出到一個div只是爲了演示目的的假設。

+0

謝謝你的回答。但沒有工作。 – Zamir10

+0

對不起,沒有看到參數。我已經將它們添加到解決方案。我在iPhone上,無法運行它。讓我知道如果仍然不好,我會刪除答案。 – hutchonoid

+0

再次我得到error.Parameters聲明不分配 – Zamir10

2

謝謝@hutchonoid。因爲你,我solution.I正在使用你的代碼和更新我的代碼:

$(document).ready(function() { 
        $.ajax({ 
      type: "GET", 
      url: '@Url.Action("Get","Category")', 
      contentType: "application/json;charset=utf-8", 
      data: { a: "testing" }, 
      dataType: "json", 
      success: function (data) { 
       $.each(data, function(index,item) { 
        $("#cat").append('<li>'+item.Name+'</li>'); 
       }); 
      }, 
      error: function() { alert('error....'); } 
     }); 

其他人是一樣的。

相關問題