У меня есть форма, которая отправляется через плагин malsup ajaxForm, и я хочу, чтобы вызов ajax ожидал, пока плагин точной позиции листовки не найдет точную позицию, поэтому я могу добавить ее к данным, отправленнымформа, устанавливающая это в некоторых скрытых полях, которые я имею в своем html.Дело в том, что у меня нет четкого способа сделать это.
У меня есть следующее:
function InitMap()
{
map = L.map('map');
function onAccuratePositionError (e) {
addStatus(e.message, 'error');
}
function onAccuratePositionProgress (e) {
}
function onAccuratePositionFound (e) {
$('#latitud').val(e.latlng.lat);
$('#longitud').val(e.latlng.lng);
$('#presicion').val(e.accuracy);
}
map.on('accuratepositionprogress', onAccuratePositionProgress);
map.on('accuratepositionfound', onAccuratePositionFound);
map.on('accuratepositionerror', onAccuratePositionError);
}
И мой Ajax-вызов:
function InitJForm()
{
$('form').ajaxForm({
beforeSubmit:Geolocalizar,
success: function(datos)
{
window.location.href = 'some url...';
},
error: function(datos)
{
var w = window.open('about:blank');
w.document.open();
w.document.write(datos.responseText);
w.document.close();
}
});
}
Вызов геолокации:
function Geolocalizar()
{
map.findAccuratePosition({
maxWait: 15000,
desiredAccuracy: 20
});
return true;
}
Есть ли способ сделать вызов геолокации, чтобы дождаться, пока функция findaccurateposition завершит поиск местоположения перед отправкой истины и отправкой запроса?