Помогите считать значение переменной за пределами функции
Здравствуйте, большая просьба помочь понять как передать значение переменных la и lo из функции в массив co
Дело в том, что переменные clLa и clLo в массиве co оказываются пустыми при проверке обработчиком obrabotchik.php Ниже скрипт:
$(function () {
var la = '';
var lo = '';
if(navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function (position) {
var la = position.coords.latitude;
var lo = position.coords.longitude;
});
}
var client = new BibliotekaJS();
var co = {
// .......
uuuurAgent: client.getUserAgent(),
clLa: la,
clLo: lo,
};
$.post('obrabotchik.php', co);
});
|
mxup,
строка 8-9 убери var |
Цитата:
Если алертом, ну например в 10 строке вызывать значение, то окошко с этими значениями появляется, то есть переменным значение присваивается. Про JavaScript читал, про глобальные и локальные переменные. Но в моём примере почему то не прокатывает это всё. Я вот думаю может из-за Jquery надо как то по другому немного делать? |
Функция, которая передается в navigator.geolocation.getCurrentPosition вызывается не мгновенно, а спустя некоторое время (т. е. тогда, когда GPS координаты будут определены). Вы сами правильно написали, что в 10 строчке координаты доступны, потому что функция вызвана после того, как координаты определились.
То , что у вас с 15 по 23 строку, надо вставить в 10 стоку, ведь именно там соответствующие данные уже есть. |
Цитата:
|
| Часовой пояс GMT +3, время: 06:34. |