2012-07-05 2 views
0

json에서 코드를 가져 오십시오.C# linq 객체에서 json to html로 데이터를 검색하십시오.

C# 코드 : -

var collection = getsortcat.Select(x => new 
     { 
      idterm = x.IDTerm, 
      mvo = x.MVO, 
      pic = x.Pic, 
      said = x.SAid, 
      termactive = x.TermActive, 
      vid = x.Vid, 
      fvo = x.FVO, 
      eterm = x.ETerm, 
      edef = x.EDef, 
      buse = x.BUse, 
      bterm = x.BTerm, 
      idcat = x.TermCat, 
      items = x.TermCategory1.IDCat, 
      catname = x.TermCategory1.TermCategory1 
     }); 
     JavaScriptSerializer jss = new JavaScriptSerializer(); 
     string output = jss.Serialize(collection); 
     return Json(output, JsonRequestBehavior.AllowGet); 

자바 스크립트 코드 : -

success: function (e) { 
        var txt = "'{ data :" + e + "}'"; 
        var obj = eval("(" + txt + ")"); 
        $('#pdata').append(obj.data[0]); 
       }, 

점점 출력하지 않습니다. 제발 날 C#에서 데이터를 검색하는 방법 솔루션을 제공 json html로 개체를?

답변

0

먼저 JavaScriptSerializer 및 수동 배관 코드를 없애기 위해 컨트롤러 조치를 수정하십시오. 직접 JSON 결과로 컬렉션을 반환 :

var collection = getsortcat.Select(x => new 
{ 
    idterm = x.IDTerm, 
    mvo = x.MVO, 
    pic = x.Pic, 
    said = x.SAid, 
    termactive = x.TermActive, 
    vid = x.Vid, 
    fvo = x.FVO, 
    eterm = x.ETerm, 
    edef = x.EDef, 
    buse = x.BUse, 
    bterm = x.BTerm, 
    idcat = x.TermCat, 
    items = x.TermCategory1.IDCat, 
    catname = x.TermCategory1.TermCategory1 
}); 
return Json(collection, JsonRequestBehavior.AllowGet); 

을 이제 e 파라미터 이미 해석 된 오브젝트의 배열을 나타내는 콜백 성공 내부. eval으로 전화 할 필요가 없습니다. 직접 다음 (인덱스) 요소와 속성에 액세스 :

success: function (e) { 
    var txt = e[0].mvo; 
}, 

그럴 수 또한 요소를 통해 루프 :

success: function (e) { 
    for (var i = 0; i < e.length; i++) { 
     var element = e[i]; 
     alert(element.idterm); 
    } 
}, 
+0

downvote에 대한 이유라도? –

+0

당신을 +1했습니다. 나에게 정답처럼 보입니다. –

+0

Mr.Dartin에게 감사드립니다. 정말 고맙습니다. –