2012-02-18 4 views
3

2 개의 자바 스크립트 문자열 배열 "myArray1"및 "myArray2"를 ajax에서 webmethod로 전달하고 싶습니다. 내가 가지고있는 것은 효과가없는 다음과 같은 것입니다.은 여러 배열을 전달합니다. ajax to webmethod

var myArray1 = new Array();  
var myArray2 = new Array();  
// the arrays are filled further in the code. 
// call to the webmethod: 
$.ajax({ 
     type: "POST", 
     url: "mypage.aspx/SavePage", 
     data: ??????, 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: function(msg) { 
      alert(msg.d); 
     }, 
     error: function() { 
      alert("failed"); 
     } 
    }); 

나는이 배열을 호출의 data:에 전달하는 방법을 모른다.

C# 코드 일부입니다. 당신의 코드 숨김에서

data: "{'myArray1':"+JSON.stringify(myArray1)+",'myArray2':"+JSON.stringify(myArray2)+"}", 

:

public static string SavePage(List<string> myArray1, List<string> myArray2) 
{ 
} 
+0

이에서보세요 http://www.aspsnippets.com/Articles /Send-and-Receive-JSON-objects-to-Web-Service-Methods-using-jQuery-AJAX-in-ASPNet.aspx – coder

답변

2

이 방법을 시도

[System.Web.Services.WebMethod] 
public static string SavePage(List<string> myArray1, List<string> myArray2) 
{ 
return myArray1; 
} 
+0

Th ank 당신은 너무 잘 작동합니다. – pessi

+0

당신을 환영합니다! 그리고 그것이 당신을 위해 작동한다는 것을 알게되어 기쁩니다. – coder

+0

@ 코더, 나는 (웹 서버 오류가 발생)이 EXACT 예에 대한 성공 경고 다음에 계속 발생하며 웹 메서드 중단 점에 아무런 제안이 없습니까? 나는 JQuery를 사용하고있다. 1.10.2 –

0
url: "mypage.aspx/SavePage", 
    data: { myArray1: myArray1, myArray2: myArray2 } 
0
var data = {}; 
data.myArray1= myArray1; 
data.myArray1= myArray2; 

var json = JSON.stringify(data); 

$.ajax({ 
    ... 
    data: json, 
    ... 
}); 
관련 문제