Wie zum senden von 'Daten' zu ASMX-web-service über AJAX POST?
Kann ich erfolgreich empfangen, die Werte von meiner web service so, dass repect das Skript ist in Ordnung. Aber ich bin jetzt versucht, Daten zu senden, um den webservice mit Hilfe des 'data' - Feld unten. Was ich kann nicht herausfinden, wie zu senden, eine einfache Zeichenfolge (z.B. "test") an den web-service das ist das, was meine web-Methode erwartet als parameter.
Jede Hilfe wird sehr geschätzt. Zum Beispiel:
function setQuestion() {
$.ajax({
type: "POST",
**data: "{}",** //how do i use this to send a string??
dataType: "json",
url: "http://someURL",
contentType: "application/json; charset=utf-8",
success: onSuccess
});
}
function onSuccess(msg) {
$("#questiontxt").append(msg);
}
InformationsquelleAutor davey1990 | 2012-02-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Für asmx-Sie brauchen, um passieren eine stringified-version des Daten-Objekts, so zum Beispiel:
Oder Sie können hava ein Objekt aus und benutzen jquery-json
Endlich, Ihre web-service-Klasse muss so Aussehen:
Toll. Sie sind eigentlich zu zitieren, die param-Namen, z.B. "{\"param1\":" + p1 + "}", aber es funktioniert tatsächlich auch ohne 🙂
InformationsquelleAutor cdm9002
jQuery nimmt das argument Daten und wandelt Sie in den passenden Typ von Anfrage-Variablen.
Damit Sie so etwas wie:
- und jQuery-den rest übernimmt die Arbeit für Sie.
Ein konkretes Beispiel basierend auf einem Kommentar:
Kannst du die Erklärung für die ASMX-Funktion, die Sie versuchen zu posten?
Ok dave, auf diese Weise gearbeitet: data: '{"value": "test"}',
Das ist merkwürdig, sollten Sie nicht brauchen, um die Daten als string. Aber ich denke, wenn es funktioniert....
Dave, müssen Sie "senden als" eine Zeichenfolge für asmx. Davey1990, verwenden Sie $.toJSON()..siehe meine Antwort unten.
InformationsquelleAutor Dave
data: "{"parameterName": "test"}"
in WebService:
public void GetData(string parameterName) {}
ok, meine Lösung funktioniert nicht, weil ich die gleichen Zitate
InformationsquelleAutor petrov.alex