Теперь вот веселая проблема.У меня есть массив объектов, как показано ниже:
objRequests = [
{
url: "/cgi-bin/script1.cgi",
dest: "#div1"
},
{
url: "/cgi-bin/script1.cgi",
dest: "#div2"
}
];
Теперь я перебираю эти объекты, чтобы загрузить некоторую информацию с сервера по определенным адресам, используя метод $ .getJSON () jQuery и после некоторого сложного маневрирования черезфункция обратного вызова, должна поместить HTML в div, идентификатор которого указан через 'dest'.
Обычно, если мне нужно указать дополнительные данные для обратного вызова, я бы использовал анонимную функцию, и этоработает просто отлично.Проблема здесь состоит в том, что указатель переменной для назначения, кажется, остается тем же самым, таким образом, назначение всегда равно "# div2" при каждом обратном вызове.
Я пробовал следующее:
for (var loop = 0; loop < objRequest.length; loop++)
{
var exec = new function(objResponse)
{
processResponse(objResponse, objRequest[loop].dest);
}
exec.dest == objRequest[loop].dest;
$.getJSON(objConfig.strTicketScript, exec);
}
, а также
for (var loop = 0; loop < objRequest.length; loop++)
{
var destination = objRequest[loop].dest;
var exec = new function(objResponse)
{
processResponse(objResponse, destination);
}
exec.dest == objRequest[loop].dest;
$.getJSON(objConfig.strTicketScript, exec);
}
, но по какой-то причине Firefox все еще не создает отдельные данные в анонимной функции.Есть ли способ получить уникальную ссылку на данные на каждой итерации?