2012-03-05 18 views
23
function CallMethod() { 
    $.getJSON('/website/RESTfulService.svc/LiveLocation/json?{x=1,y=2}', function(data) { 
     getResult(data.lat, data.lon); 
    }); 
} 
+0

spróbować „/website/RESTfulService.svc/LiveLocation/json?x=1&y=2” – Nicocube

Odpowiedz

66

przekazać je jako obiekt tuż po URL i przed funkcji:

function CallMethod() { 
    $.getJSON('/website/RESTfulService.svc/LiveLocation/json', 
    { 
     x: "1", 
     y: "2" 
    }, 
    function(data) { 
     getResult(data.lat, data.lon); 
    }); 
} 
+1

nie miałem pojęcia, to jest możliwe, po prostu wspaniały. –

+0

Co powiesz na brak parametru/void? powinienem zrobić '$ .getJSON ('/ website/RESTfulService.svc/LiveLocation/json', null, function (data) {...});'? –

+0

Witam, jak mogę odczytać wartość {x: "1", y: "2"} w C#? – pikoooz

3

Podobnie jak Zheileman powiedział, ale należy pamiętać, że w ten sposób, mimo że minęło parametry w formacie JSON, rzeczywiste parametry są przekazywane do tego serwera, jak zakodowanej zawartości HTTP, który kończy się w następujący sposób:

/website/RESTfulService.svc/LiveLocation/json?x=1 & y = 2

3

Alternatywnie, najpierw utworzyć obiekt JavaScript dla uproszczenia, a następnie przekazać

var myObject = {x: "1", y: "2"}; 

$.getJSON('/website/RESTfulService.svc/LiveLocation/json', myObject, function(dataVal) { 
    //Use Your result 
}); 
+0

Jest to w zasadzie taka sama odpowiedź jak w przypadku Zheilemana i nie jest łatwo ją odczytać. –

+0

Wiem, że to ta sama odpowiedź, ale sposób przekazywania danych jako parametru jest inny. Wspomniałem już, że jest to ze względu na prostotę. –

+0

Widzę twój punkt widzenia. Przesłałem sugerowaną zmianę Twojej odpowiedzi, która jest bardziej czytelna (co jest celem tego alternatywnego rozwiązania) –

Powiązane problemy