EDIT: Tatsächliche Fehler Ich bin aus dem Netzwerk Daten zu erhalten:Rückkehr google map Marker mit Ajax immer null
"Invalid JSON primitiv: Position"
-Code für sie anrufen:
function AddMarkerAndPanTo(latLng, map) {
var marker = new google.maps.Marker({
position: latLng,
map: map
});
var x = marker.position;
$.ajax({
type: "POST",
url: '@Url.Action("AddMarker", "Map")', // Map Controller, AddMarker Action
data: JSON.stringify({ "position": x }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
if (data.done)
alert("Marker added");
else
alert("MARKER FAILED");
}
});
map.panTo(latLng);
}
Die serverseitige Funktion ein Ansichtsmodell darunter geschrieben werden:
[HttpPost]
public ActionResult AddMarker(LatLngViewModel position)
{
if (position != null)
return Json(true, JsonRequestBehavior.AllowGet);
else
return Json(false, JsonRequestBehavior.AllowGet);
}
Ansichtsmodell:
public class LatLngViewModel
{
double latitude { get; set; }
double longitude { get; set; }
}
Ich habe versucht, mit Anführungszeichen und ohne auf Position stringifying das Ergebnis oder es mit toJSON Rückkehr(). Versuchte das ToSend zusammen mit verschiedenen Anführungszeichen etc. zu stitchen. An dieser Stelle habe ich keine Ahnung was es verursacht und ich habe keine anderen Lösungen zur Hand. Schätze jede Hilfe bei der Auflösung und sende die blutigen Koordinaten zurück, um sie irgendwie an das Modell zu binden.
Welche Server-Seite Sprache verwenden Sie? – scaisEdge
Es ist C#, mit ASP.NET – Ben