2014-03-12 3 views
1

MVC3에 웹 애플리케이션이 있고 Telerik Grid Batch Editing을 사용하고 있습니다.Ajax에서 Controller로 IEnumerable리스트를 보내는 방법

일괄 편집 갱신 된 행을 수집하고 배열 컨트롤러에 아약스와 자바 스크립트에서 IEnumerable을 목록처럼 보낼 수 있도록

[GridAction] 
    public ActionResult Update(IEnumerable<Customers> updated) 
    { 
     ///user codes 
    } 

하지만, 방법 등을 IEnumerable 목록을 컨트롤러로 업데이트 열을 반환 변경 버튼을 저장할 수 있나요?

편집 내가 thje 값을 보내기 전에

enter image description here

난 그냥이 작업을 수행 할 수있는 컨트롤러 및 변경 사항 저장 버튼 갱신 된 행 데이터를 전송하고 싶지만

난 그냥 원하는 PNG로 내 시야를 가하고있어 사용자에게 "로드 하시겠습니까?"라고 물어보십시오. 및 송신 후 내가 원하는 데이터 나 또한

당신이이 상황에 대한의 exprience이 있나요 요청 아약스와 편집 배치를 사용하고 있기 때문에

그래서 내가 아약스 요청과 함께이 작업을 수행 할 thinked 모든 페이지를 새로 고치려면? 내가 ::

function TestAjax() { 
    var Test = []; 

    for (var i = 0; i < 5; i++) { 
     Test.push({ ID: i, Name: "RJ" }); 
    } 

    $.ajax({ 
     type: 'POST', 
     url: rootUrl('Home/TestPost'), 
     contentType: "application/json", 
     //data: { Test: JSON.stringify(data) }, 
     data:JSON.stringify({Test: Test}), 
     success: function (data) { 
      alert("Succeded"); 
     } 
    }); 
} 

으로 그리고 (즉 컨트롤러에서) 서버 측에 내 테스트 자바 스크립트 함수에서 사용되는 것처럼

+0

왜 JavaScript로 보내시겠습니까? 수동으로 구문 분석하지 마십시오. 문제의 코드를 볼 수 있도록보기를 게시하십시오. –

+0

안녕하세요! @AndreiV 내 view.jpg를 붙여 넣고 내가 원하는 것을 설명했습니다. – saulyasar

+0

자바 스크립트 (또는 jQuery)를 사용하여 제출 단추에 이벤트 리스너를 추가하기 만하면됩니다. 클릭하면 '확인'만 표시됩니다. –

답변

2

를 사용하여 AJAX POST 체감 ::

public ActionResult TestPost(IEnumerable<TestViewModel> Test) 
    { 
     return Json(3); 
    } 

뷰 모델 것을 사용 ::

public class TestViewModel 
    { 
     public long ID { get; set; } 
     public string Name { get; set; } 
    } 

과 같이 다른 데이터 형식이 포함되어 있습니다. 이것은 당신을 도울 것입니다.

+0

Thnx @Rahul 내가하는 일을 이해하지만 모든 업데이트 된 행 데이터를 보내고 일부 데이터는 소수 데이터입니다. 문자열 또한 어떻게 격자에서 업데이트 된 행을 잡을 수 있습니까 ?? – saulyasar

+0

@saul dataType에는 아무 것도 없습니다. 주어진 예제에서 보았 듯이 ID (long)와 Name (string)을 전달합니다. 그래, 내 대답을 viewmodel과 함께 편집하도록하겠습니다. – Rahul