Передача переменной jQuery из одной функции в другую - PullRequest
3 голосов
/ 12 мая 2011

Мне нужно создать переменную и присвоить значение этой переменной для последующего использования. Чтобы сохранить сложность и сделать ее проще, я удалил детали, которые также являются частью того, что еще входит в var item2. Переменная в этом примере будет mySeries

var mySeries;

$.getJSON("/_scripts/proxy.php", jsonObj, function(item)
{
//Stuff happens here

//NEED TO ASSIGN VALUE TO mySeries HERE:
mySeries = item[0].series_id;

//Stuff happens here
});

//NEED TO USER mySeries VALUE HERE BUT IT IS NOT DEFINED
var item2 = mySeries;

Ответы [ 3 ]

3 голосов
/ 12 мая 2011

С ajax вам нужно использовать обратные вызовы, так как ajax равен asynchronous:

$.getJSON("/_scripts/proxy.php", jsonObj, function(item)
{
   var mySeries;
   //Stuff happens here

   //NEED TO ASSIGN VALUE TO mySeries HERE:
   mySeries = item[0].series_id;
   save_series(mySeries)
   //Stuff happens here
});

function save_series(s){

   var item2 = mySeries;

   //...etc
}
0 голосов
/ 12 мая 2011

Да, я думаю, вам нужен установщик для item2, поскольку он происходит после функции, но, поскольку он асинхронный, он не будет иметь значения, пока не вернется. Вы также можете использовать .ajax () и установить функцию синхронной, если вам нужна такая функциональность.

0 голосов
/ 12 мая 2011

mySeries get назначен ПОСЛЕ того, как запрос json завершится, ваш item2 get будет назначен до его завершения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...