2009-07-01 4 views
3

JavaScript 배열을 querystring을 통해 .ashx로 보내야합니다. 내 .ashx (처리기)에서는 배열의 각 값을 구문 분석하고 일반 목록을 채우는 데 필요한 메서드가 있습니다.처리를 위해 JavaScript 배열을 .ashx로 보냄

이 두 가지 모두를 쿼리 문자열로 전달하는 방법에 대해 생각해보십시오. 그 querystring 값을 가져 와서 C# 배열로 변환하여 내 .ashx에서 내 메서드로 전달하는 방법도 있습니다. 쿼리 문자열을 배열을 통과 그래서 일단

, 나는 이제 배열의 각 값을 통해 처음으로 반복을 쿼리 문자열과 자바 스크립트의 변수에 추가로 전달은이

var javascriptArray = [1212, 32321, 42342]; 

같은 될 것 가정합니다. 그래서 나는이

var querystringArray = "1212, 32321, 42342"; 

같은 끝낼 것 결국 querystringArray 내 .ASHX 안타 URL에 쿼리 문자열 매개 변수로 전달됩니다.

둘째, 일단 매개 변수를 가져 오면 문자열 분할을 수행하고 C# 배열을 반환하는 ultility 함수를 사용하거나 만들 것이라고 가정합니다. 그런 다음 내 방법으로 전달하십시오.

이 모든 것을 수행하는 더 쉽고 좋은 방법이 있는지 궁금합니다. 생각? 아직 JavaScript 구문으로는 최고가 아니야.

+0

내 질문은 당신을 위해 HttpHandler를을 사용하고있는 것입니까? Javascript를 처리하는 것입니까? 그것이 단지 JSON과 포스트 백의 조합을 사용 해본 적이 있습니까? .Net에서 JSON을 사용하기위한 한 가지 도구는 JSON .Net http://www.codeplex.com/Json – Emmanuel

답변

3

자바 스크립트

var myArray = [12, 34, 56]; 
var url = "MyHandler.ashx?dat=" + encodeURIComponent(myArray.join()); 

C#을

// In Page_Load 
string[] dat = Request.QueryString["dat"].Split(","); 
+0

Nice입니다. 이미 C# 측에 split 변수를 작성했지만 .join()을 수행 할 수 있는지 여부는 알지 못했습니다. 시원한. – PositiveGuy

+0

예. 기본적으로 조인은 쉼표를 사용하지만 공백에 대해서는 myArray.join ("")과 같이 사용할 항목을 전달할 수 있습니다. –

관련 문제