2017-12-24 4 views
0

Jquery를 통해 4 개의 매개 변수를 전달하는 ajax 호출을 작성하려고합니다. 그것은 일어나지 않고 출력 값을 가진 error. onsuccess도주지 않습니다. 아래 2 개의 텍스트 상자 값을 채우고 싶습니다.여러 매개 변수를 전달하는 중 오류없이 Ajax 호출이 발생하지 않습니다.

클라이언트 측 :

함수 doCalculation() {제가

function OnSuccess(response) { 
     var outputparams = response.d; 
     $("#txtbox1").val(outputparams.abc); 
     $("#txtbox2").val(outputparams.xyz) 
    } 

아래 VB.NET 코드처럼 출력 PARAMS 두 텍스트 박스 값을 기입 할 성공

 var obj = {}; 
     obj.apple = $("#ddlapple :selected").text(); 
     obj.banana = $("#ddlbanana :selected").text(); 
     obj.chocolate = parseFloat($("#txtchocolate").val().toString()).toFixed(2); 
     obj.doll = parseFloat($("#txtdoll").val().toString()).toFixed(2); 

     if (obj.chocolate > 0 && obj.doll > 0) { 

      $.ajax({ 
       type: "POST", 
       url: "xxxxxxxxxxxxxxx.aspx/Calculation", 
       data: JSON.stringify(obj), 
       contentType: "application/json; charset=utf-8", 
       dataType: "json", 
       success: OnSuccess, 
       failure: function (response) { 
        alert(response.d); 
       } 
      }); 
     } 
    } 

:

_ 공용 공유 기능 계산 (ByVal apple 문자열, ClassParams로 문자열로 ByVal의 바나나 진수로 ByVal의 초콜릿 진수로 ByVal의 인형)로

{

// 여기에 몇 가지 계산

}

공공 클래스 ClassParams

Public Property abc() As Decimal 
Public Property xyz() As Decimal 

최종 클래스

사전에 :

답변

0

향후 다른 사람을위한 답변입니다. 나는 여러 가지 방법을 사용했지만이 중 하나만 나를 위해 일했습니다.

function doCalculation() { 
var obj = {}; 
     obj.apple = $("#ddlapple :selected").text(); 
     obj.banana = $("#ddlbanana :selected").text(); 
     obj.chocolate = parseFloat($("#txtchocolate").val().toString()).toFixed(2); 
     obj.doll = parseFloat($("#txtdoll").val().toString()).toFixed(2); 

     if (obj.chocolate > 0 && obj.doll > 0) { 

      $.ajax({ 
       type: "POST", 
       url: "xxxxxxxxxxxxxxx.aspx/Calculation", 
       data: JSON.stringify(obj), 
       contentType: "application/json; charset=utf-8", 
       data: '{"apple":"' + obj.apple + '","banana":"' + obj.banana + '","chocolate ":"' + obj.chocolate + '","doll":"' + obj.doll + '"}', 
       success: OnSuccess, 
       error: function (response) { 
        alert(response.d); 
       } 
      }); 
     } 
    } 




function OnSuccess(response) { 
     var outputparams = response.d; 
     $("#txtbox1").val(outputparams.abc); 
     $("#txtbox2").val(outputparams.xyz) 
    } 

VB.NET 코드 :

클래스 객체로 출력 PARAMS 반환 및 JQuery와의 클라이언트 측에서

<System.Web.Services.WebMethod()> _ 

Public Shared Function Calculation(ByVal apple As String, ByVal banana As String, ByVal chocolate As Decimal, ByVal doll As Decimal) As ClassParams 

{ 

    // some calculation here 

} 

Public Class ClassParams 

Public Property abc() As Decimal 
Public Property xyz() As Decimal 

End Class 
0

jquery ajax에는 'failure'옵션이 없습니다. 실패를 '오류'로 바꾸고 확인하십시오.

+0

좋아하는 값으로 텍스트 상자를 채우는 것을 소모. 그걸 확인하게 해줘. 또한 나는 아래의 데이터 : JSON.stringify (사과 : obj.apple, 바나나 : obj.banana, 초콜릿 : obj.chocolate, 인형 : obj.doll) 매개 변수를 전달하는 방법을 변경했습니다. –

+0

작동하지 않았습니다. –

+0

전화가 서버에 도달하지 않은 것 같습니다. 또는 특정 요청에 대한 응답이 서버에서 전송되지 않습니다. 백 엔드 코드를 디버그하십시오. – Pradeep

관련 문제