2017-04-01 5 views
-1

Ich habe diesen Code:JSON Post funktioniert nicht

[WebMethod] 
public List<string> pubss(string gn) 
    { 
     List<string> onepub = new List<string>(); 
     iam_dbEntities db = new iam_dbEntities(); 
     var message = from i in db.Public_MessageSet where 
     i.RoomSet.Room_Name == gn select i; 
     foreach(var s in message) 
     { 
      onepub.Add(s.Sender.ToString()); 
     } 
     return onepub; 
    } 

und diesen JQuery-Code:

$('#addRoom').click(function() { 
$.ajax({  
      type: "POST", 
      url: "WebService.asmx/pubss", 
      data: "gn=Programmers", 
      dataType: "json", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (data) { 

       alert(JSON.toString(data)); 
      } 
    }); 
}); 

Wenn ich auf die Schaltfläche klicken erwarte ich einige Warnungen Informationen über den Absender enthalten aber nichts zeigte, keine einzige Warnung.

+0

"Daten" gesendet werden, ist nicht JSON als Ihr contentType impliziert – charlietfl

+0

@charlietfl also was? – user3144374

+0

also, wenn Sie beabsichtigen, json zu senden, dann sollte es json sein. Wenn Sie beabsichtigen, formcodierte Daten zu senden, dann setzen Sie contentType nicht als json – charlietfl

Antwort

-1

Versuchen Sie, mit dem folgenden modifizierten Code

$.ajax({  
      type: "POST", 
      url: "WebService.asmx/pubss", 
      data: "{gn:'Programmers'}", 
      dataType: "json", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (data) { 

       alert(JSON.toString(data)); 
      } 
    }); 
+0

diesen Code hat es auch nicht funktioniert, ich meine, ich sehe viele Tutorials und ich sehe viele Codes, aber wenn ich versuche, das gleiche passiert nichts passiert – user3144374

+0

To Call Web-Service-Methoden aus dem Skript gibt es eine Zeile in der ASMX-Datei. Standardmäßig wurde es kommentiert. Bitte Un-Kommentieren und einmal prüfen –

-1

Gibt es einen Fehler in der Konsole erwähnen bitte? welcher Statuscode für Ajax? wie Vorabend können Sie unter Vorsichtsmaßnahmen überprüfen: 1. Bei Erfolg können Sie unten probieren:

data = data.hasOwnProperty("d") ? data.d : data; 

Mai d Eigenschaft kann dazu führen werden. 2. geben Ihre Daten mit JSON.stringify

JSON.stringify({gn:'Programmers'}) 

3. in Ihrer Ajax Sie haben datatype: "json", 2 mal. 4. Wenn ajax erfolgreich ist, dann debuggen Sie webMthod und prüfen, ob es korrekte Daten zurückgibt?

+0

Ich fügte den Fehlercode hinzu: function (req) {alert (req);} und es zeigt Fehler an: [Object] [Object]. Ich versuchte mit console.log Fehler auch, aber nichts zeigt sich. – user3144374

+0

Sie sind Ajax-Statuscode 202? –