2013-07-17 2 views
0

정적 전화 page method에 대한 jquery ajax 호출을 만들었습니다. 어떤 매개 변수와도 잘 작동합니다. 그러나 매개 변수를 넣으면 해당 페이지 메서드가 호출되지 않습니다. 아래 코드가 있습니다. JAVASCRIPT매개 변수가 작동하지 않는 JQqery ajax 호출

 $.ajax({ 
     type: 'POST', 
     url: 'ItemMaster.aspx/UploadFile', 
     contentType: 'application/json; charset=utf-8', 
     data: {'path':'mydata'}, 
     dataType: 'json', 
     success: function (msg) { 
      alert(msg.d); 
     } 
    }); 

페이지 방법

[WebMethod] 
    public static string UploadFile(string path) 
    { 
     return "Success"; 
    } 

datatype 불일치가 발생인가? 나는 어떤 성공없이 잠시 동안 구글 워밍업. 제발 도와주세요 ..

답변

2

데이터 개체는 JSON 문자열이어야합니다. 시도해보십시오.

var dataToSend = JSON.stringify({'path':'mydata'}); 

$.ajax({ 
    type: 'POST', 
    url: 'ItemMaster.aspx/UploadFile', 
    contentType: 'application/json; charset=utf-8', 
    data: dataToSend, 
    dataType: 'json', 
    success: function (msg) { 
     alert(msg.d); 
    } 
}); 

구형 브라우저를 지원하는 경우 JSON.js를 포함하십시오.

+0

고마워요 .. –

1

보내시는 데이터는 json이 아닙니다. 콘텐츠 형식을 제거하거나 데이터를 json으로 변환하십시오.

콘텐츠 유형이 삭제됩니다.

$.ajax({ 
    type: 'POST', 
    url: 'ItemMaster.aspx/UploadFile', 
    data: {path:'mydata'}, // you may need to remove the quotes from path here 
    success: function (msg) { 
     alert(msg.d); 
    } 
}); 
+0

응답 해 주셔서 감사합니다. 나는 이것을 사용했다. 하지만 그것은 경고 상자에'undefined '를주었습니다. 또한 페이지 메서드에 대한 중단 점이 발생하지 않습니다. –