|
|
|
| делаю AJAX запрос
var link= $.get("/js/calendar2/date.php", {some: "1", some2: "22" }, function(data)
{
var url='http://site.ru ' + data;
alert(url);
return url;
});
alert(link);
|
При проверке alerte внутри функции верное значение http://site.ru/22_1
А при alert(link) когда сделали return получаем значение:
object XMLHttpRequest | |
|
|
|
|
|
|
|
для: VL
(26.05.2011 в 04:14)
| | При таком раскладе функция $.get возвращает ссылку на объект AJAX запроса.
Результат же вашего запроса передается в функцию и оттуда происходят все манипуляции.
Наверное нужно сделать вот так:
var link;
$.get("/js/calendar2/date.php", {some: "1", some2: "22" }, function(data) {link ='http://site.ru ' + data; });
alert(link);
|
| |
|
|
|
|
|
|
|
для: ONYX
(26.05.2011 в 07:20)
| | Пробывал не помогает=) | |
|
|
|
|
|
|
|
для: ONYX
(26.05.2011 в 07:20)
| | нет. скрипт не остановиться на $.get и пойдет дальше, при вызове alert переменная еще будет пустая | |
|
|
|
|
|
|
|
для: VL
(26.05.2011 в 04:14)
| | вам надо дальней код оформить в функцию и вызывать ее.
var link;
$.get("/js/calendar2/date.php", {some: "1", some2: "22" }, function(data) {link ='http://site.ru ' + data;
nextSteep() });
function nextSteep(){
alert(link);
}
|
| |
|
|
|
|
|
|
|
для: AlexSol
(26.05.2011 в 09:05)
| | alert я использовал для отладки.
Мне надо вернуть переменную из $.get чтобы потом в дальнешем пользоваться ей
function _some()
{
var link;
$.get("/js/calendar2/date.php", {name: "Vasya", age: "27" }, function(data) { somevar = data; });
link='http://site.com '+ somevar;
return link;
}
|
Мне надо получить то что возвращает date.php, как я понял присваивается переменной data.
А вот потом вывести оттуда. | |
|
|
|
|
|
|
|
для: VL
(26.05.2011 в 09:19)
| | еще раз. вам надо оформить код в функцию и вызывать ее.
ваш последний код
function _some()
{
var link;
// отправляете запрос серверу
$.get("/js/calendar2/date.php", {name: "Vasya", age: "27" }, function(data) { somevar = data; });
// функция работает дальше, не дожидаясь ответа, somevar еще не определена!
link='http://site.com '+ somevar;
return link;
}
|
| |
|
|
|
|
|
|
|
для: AlexSol
(26.05.2011 в 09:55)
| | ПОнял. Но что то не дополучается
function _someFunc(format, objDate) {
var link;
var somevar;
$.get("/js/calendar2/date.php", {name: "Vasya", age: "27" }, function(data) {somevar = data;nextSteep() });
function nextSteep(){
return somevar;
}
link=nextSteep();
return link;
};
|
Возвращает значение Undefined | |
|
|
|
|
|
|
|
для: VL
(26.05.2011 в 10:17)
| | так таже самая ошибка.
оберните в функцию код где нужно использовать эту переменную
$.get("/js/calendar2/date.php", {name: "Vasya", age: "27" }, nextSteep(data));
function nextSteep(somevar){
alert( somevar);
// тут код, в котором надо значение обработать, никаких return не надо.
}
|
| |
|
|
|
|
|
|
|
для: AlexSol
(26.05.2011 в 10:52)
| | В общем я попробывал как у вас.
function _formatLink(format, objDate) {
var link;
var somevar;
var data;
$.get("/js/calendar2/date.php", {name: "Vasya", age: "27" }, nextSteep(data));
function nextSteep(somevar){
alert( somevar);
link=somevar;
}
return link;
};
|
Значение Undefined;
Еще попробывал так,но тут наверное все понятно почему не работает.
function _formatLink(format, objDate) {
var link;
var somevar;
var data;
$.get("/js/calendar2/date.php", {name: "Vasya", age: "27" }, function(data) { nextSteep(data);});
function nextSteep(somevar){
alert(somevar);
link= somevar;
};
return link;
};
|
На выходе Alert то что надо а вот значение опять же Undefined
Up:
Меня спасло
link ='http://vladnwes.ru/' + $.ajax({ type: "GET" , url: "/js/calendar2/date.php", data: "name=John&location=Boston" , async: false
}).responseText;
|
Примчем только при async: false | |
|
|
|
|
|
|
|
для: VL
(27.05.2011 в 02:47)
| | >В общем я попробывал как у вас.
я такой билеберды не писал. у меня нет нигде объявления функции внутри другой функции.
nextSteep надо было вынести за пределы _formatLink | |
|
|
|