У меня есть код javascript, который использует jQuery для вызова $.post(). Я хочу отправить этой функции строковый параметр, но мои попытки не увенчались успехом. Я попробовал этот вызов функции, который видел в другом посте, но он не сработал $.post(SavePoint, { data });
myTimer = (function(ctx) {
$.post(getPoint).done(function(xml) {
parseXml(xml);
var lon = (parseFloat($xml.find("lon").text()) + 180) * (screen.height / 360);
var lat = (parseFloat($xml.find("lat").text()) + 90) * (screen.width / 180);
draw(ctx, rout, lat, lon);
if (recordTime <= 0 && recordTime > -0.2) {
$.post(SaveToFile);
isSaveNeeded = "false";
}
var isSaveNeeded = document.getElementById("isSaveNeeded").value;
if (isSaveNeeded == "true") {
var latS = parseFloat($xml.find("lat").text());
var lonS = parseFloat($xml.find("lon").text());
var rudderS = parseFloat($xml.find("rudder").text());
var throttleS = parseFloat($xml.find("throttle").text());
var data = latS + "," + lonS + "," + rudderS + "," + throttleS + ",";
alert(data);
$.post(SavePoint, {
data
}); //This func call doesn't work..
alert(data);
recordTime -= 0.25;
}
});
});
setInterval(function() {
myTimer(ctx);
}, 1000 / rate);
Возможный дубликат JavaScript/jQuery для загрузки файла через POST с данными JSON



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


$.post возьмите второй параметр как объект, а не строку, я думаю, что ваш data это строка, возьмите ссылку из следующего. В конечной точке SavePoint вы вводите data параметры.
var data = latS + "," + lonS + "," + rudderS + "," + throttleS + ",";
alert(data);
$.post(SavePoint, { data: data },
function(returnedData){
console.info(returnedData);
}).fail(function(){
console.info("error");
});
Куда выводит console.info? Я пытался использовать ваше сообщение decleration, но это не сработало..
@OdedBen-Noon Вы можете определить $.post 2 способа: первый с обратным вызовом и второй без обратного вызова, я определил с обратным вызовом, вы также можете определить как обычный Если вы не хотите использовать результат, обычный пост выглядит так $.post(SavePoint, { data: data })
возможно, попробуйте удалить
{ }изdata, поскольку данные не json, а просто строка.