2009-02-02 11 views
13

Sto provando ad eseguire un webservice asp.net usando jquery. Quando passo solo parametro di input funziona bene:Come passare più parametri in formato json a un servizio Web utilizzando jquery?

$.ajax({ 
    type: "POST", 
    url: url, 
    data: "{'Id1':'2'}", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: callback 
}); 

ma se provo passare più parametri fallisce

$.ajax({ 
    type: "POST", 
    url: url, 
    data: "{'Id1':'2'},{'Id2':'2'}", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: callback 
});  

Naturalmente, quando si tenta di passare 2 parametri di input, modifico la metodo web in modo che richieda 2 parametri di input.

Qualche idea?

+0

Abbiamo bisogno di vedere il codice ASP che analizza il parametro oggetto JSON POST. –

+1

modifica l'URL url = url + '? Param1 =' + value1 + '&& param2 =' + value2; questo potrebbe servirti –

risposta

34

trovato la soluzione:

Dovrebbe essere:

"{'Id1':'2','Id2':'2'}" 

e non

"{'Id1':'2'},{'Id2':'2'}" 
5

Questa è una pugnalata al buio, ma forse hai bisogno di avvolgere i tuoi argomenti JSON; come dire qualcosa del genere:

data: "{'Ids':[{'Id1':'2'},{'Id2':'2'}]}" 

Assicurarsi che il JSON sia formato correttamente?

2

Penso che il modo migliore è:

data: "{'Ids':['2','2']}" 

di leggere questo valori ID [0], ID [1].

3

Ho lo stesso problema e risolto dal

data: "Id1=" + id1 + "&Id2=" + id2 
Problemi correlati