부분 포스트 백에서 원하는 양식 컨트롤이나 컨트롤의 모든 값을 가져올 수 있습니다. 그것은 사소한 대답이지만, 처음에는 직관적으로 명확하지 않습니다. 아마 ASP.net이 죽은 이유 일 것입니다.
는
__doPostback(string controlId,string param)
의 매개 변수 문자열 것을 기억하고, ASP.net 방법
Request.Params.Get("__EVENTTARGET"); // id
Request.Params.Get("__EVENTTARGET"); // parameter
반환 문자열.
당신이 당신의 부분에 다시 보내려는 모든 양식 요소의 키 값 쌍과 자바 스크립트 객체를 구축에
따라서 간단한 대답이다.
해당 개체를 문자열화한 다음 __doPostBack 호출의 두 번째 매개 변수로 전달하십시오.
서버 쪽에서는 개체와 원하는 모든 양식 값을 추출하기 위해이 프로세스를 간단히 되돌릴 수 있습니다. 예를 들어
:
var strigifiedObject = JSON.stringify(myFormObject);
var id = "partialPostback";
__doPostBack(id, strigifiedObject);
... 한편 서버 측
string id = Request.Params.Get("__EVENTTARGET");
string param = Request.Params.Get("__EVENTARGUMENT");
if (id == "partialPostback") {
List<MyObj> formVals = new JavaScriptSerializer().Deserialize<List<MyObj>>>(param);
}
음에 당신은 내가이 상황에서 웹 서비스를 사용하는 것이 어떻게 설명 할 수 있습니까? 다른 부분에 웹 서비스를 사용하고 있지만 gridview도 렌더링 중이므로 간단하게 업데이트 패널에 배치하고 있습니다. – raydenl
편집 됨, 링크 참조. – Emyr
그게 완전히 정확하다고 생각하지 않습니다 ... Request.Form은 정상적인 HTTP 흐름에서받은 모든 변수를 반영합니다. Viewstate는 실제로 각 포스트 백을 통해 유지되므로 변수를 전달하는 변수 중 하나입니다. –