2012-03-14 11 views
0
var states = new Array();   
    states[0] = { Id: 1, Name: "Maharashtra" }; 
    states[1] = { Id: 2, Name: "Punjab" }; 

    var Id = new Array(); 
    Id[0] = 0; 
    Id[1] = 1; 




    $.ajax({ 
     type: "POST", 
     url: "WebService.asmx/MultiDim", 
     data: "{'states':" + JSON.stringify(states) +",'rowId':" + JSON.stringify(Id) + "}", 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: function (msg) { 
      // Do something interesting here. 
     } 
    });  


[WebMethod] 
     public void MultiDim(statesTemplate[] states, Id rowId) 
     { 

     } 

私は、Webサービス機能のROWID二PARAMTERを取得しておりません。は、どのように私はjqueryのAJAX機能で複数のパラメータを使用していますか?

答えて

0

試してください:あなたは$.ajax()関数にオブジェクトであるdataプロパティを渡すことができ

data : { states : states, rowId : Id }, 

、jQueryのは残りの世話をします。

データサーバに送信すること

データ。 ないすでに文字列であればこれは、クエリ文字列に変換されます。これは、GET-リクエストのURLに追加されます。この自動処理を防止するには、 processDataオプションを参照してください。オブジェクトは キー/値のペアでなければなりません。 値が配列の場合、jQueryのは、伝統的な設定 (後述)の値に基づいて、同じキーで複数 値をシリアル化。

出典:http://api.jquery.com/jquery.ajax/

ただ、ノート、あなたは文字通りあなたのarray Sを初期化することができます

var states = [ { Id : 1, Name : 'Maharashtra' }, { Id : 2, Name : 'Punjab' } ], 
    Id  = [ 0, 1 ]; 
0

を作成しているJSON文字列が無効JSONです。 JSONは二重引用符を必要とします。文字列を一重引用符で始まり、二重引用符をキーと値に使用します。

を検証する

使用jsonlint.com

関連する問題