2011-01-13 6 views
0

JQuery를 사용하여 WCF 서비스를 사용하고 있습니다.JQuery.ajax() : WCF 서비스를 사용할 때 매개 변수 데이터 문제가 발생했습니다.

var para = ' { "Parameter" : { "ID" : "5", "Name" : "Peter" } }' 
$.ajax({ 
    type: "POST", 
    contentType: "application/json", 
    data: para, 
    url: url 
    success: success 
}); 

하지만 문자열로 데이터 매개 변수를 전달하지 않고 나는 어떤 방식으로 배열로 IST 통과 할 수있을한다고 생각 : 사실이 잘 작동합니다. 좋아요 :

var para = { "Parameter" : { "ID" : 5, "Name" : "Peter" } } 

하지만이 방법을 시도하면 오류가 발생합니다. 내가 뭘 잘못하고있어?

감사

답변

1
var para = '{ "ID" : "5", "Name" : "Peter" }'; 
$.ajax({ 
    type: "POST", 
    data: para, 
    url: url 
    success: success 
}); 

이 같은 포맷 경우

$_POST will return array('ID' => '5', 'Name' => 'Peter'); 

로 값을 얻을 수 있어야하지만 당신은 또한 수행하여 액세스 할 수 있습니다

$_POST['ID'] and $_POST['Name'] 

또한 jquery post 함수를 사용할 수도 있습니다 :

var para = '{ "ID" : "5", "Name" : "Peter" }'; 
$.post(
    url, 
    para 
); 
0

json2.jsJSON.stringify 기능을 사용할 수 있습니다. 그럼 당신은 아약스 호출

var para = { Parameter : { ID :5, Name : "Peter" } }; 
$.ajax({ 
    type: "POST", 
    contentType: "application/json", 
    data: JSON.stringify(para), 
    url: url 
    success: success 
}); 

json으로 문자열을 수동으로 변환의 사용으로 인해 이스케이프해야합니다 문자열에서 가능한 공간 특징이 (자세한 내용은 http://www.json.org/ 참조)의 좋지 않은 것이다.

관련 문제