2016-06-29 3 views
1

ajx呼び出しからvb.netで定義された関数にパラメータを渡す必要があります。ajaxを通じてvb.netで定義された関数にパラメータを渡す方法

関数の定義は次のとおり

<System.Web.Services.WebMethod()> _ 
    Public Shared Function wwww(ByVal id As String) As String 


     Return "jhgfjhf" 

    End Function 

Ajax呼び出しは以下の通りである:

var l = window.location; 
    var base_url = l.protocol + "//" + l.host; 

    $(".pagen ").click(function() { 


     var num = $(this).attr('id'); 

     alert(num); 
     $.ajax({ 
      type: "POST", 
      url: base_url + '/Album%20Viewer%20web/albumlist.aspx/wwww', 
      data: { id:num }, 
      dataType: 'json', 
      async: false, 
      cache: false, 
      contentType: "application/json", 

      success: function (response) { 

       console.log(response); 




      }, 
      error: function (jqXHR, textStatus, errorThrown) { 

       if (typeof (console) != 'undefined') { 
        console.log(errorThrown); 
       } 
       else { alert("something went wrong"); } 
      } 
     }); 


    }); 

I引数部(使用されたデータを削除error.If内部サーバに得られ、このコードを使用している間{ }とパブリック共有関数wwww()として文字列)、それは正常に動作します。どのようにパラメータを渡すことができますか?

<ScriptService()> 
Public Class WebService1 
    Inherits System.Web.Services.WebService 

    <WebMethod()> _ 
    <ScriptMethod(ResponseFormat:=ResponseFormat.Json)> 
    Public Function wwww(ByVal id As String) As String 
     Return id & "AAA" 
    End Function 

End Class 

次に、あなたが少しあなたが渡す方法を変更する必要があります:WebMethodScriptMethod属性を追加します(JSONを返すように)、その後、あなたはWebServiceScriptService属性を追加する必要があるスクリプトからの呼び出しを許可する

答えて

0

このようなjavascriptを介してデータ:

data: "{ 'id':'" + num +"'}", // "{'id':'something'}" 

値はそうあなたがする必要があります値を読み取るために、JSONで返されます。

var returnedValue = response.d // 'd' because Microsoft decided so 
関連する問題