Может ли кто-нибудь показать мне, как сделать 3 междоменных запроса jsonp, каждый с одним и тем же обратным вызовом jsonp, который просто получает содержимое и записывает его на страницу?
Я пытаюсь создать массив URL для циклического прохождения.что я хочу запустить запрос jsonp для каждого из URL.Для каждого ответа я хочу взять этот объект json, а затем записать данные в раздел страницы.Мне все равно, в каком порядке. Если я использую функцию $ .each, мне нужно учитывать область действия?Поскольку у меня определена только одна функция обратного вызова, и я хочу переопределить обратный вызов jsonp, поэтому она всегда вызывает одну и ту же функцию, но эта функция достаточно умна, чтобы знать, какой объект был возвращен, и записать его на страницу.
Вот мой код:
$(document).ready(function() {
$.getJSON('/server/webcontent/js/env-urls-local.js', function(data) {
$.each(data.env.urls, function(index, url) {
//alert(url.path);
$.ajax({
url: url.path,
dataType: 'jsonp',
async: false,
cache: false,
done: function(sData, textStatus, jqXHR){
var targetreleasediv = "." + url.target + ' td:nth-child(2)';
var targetdescdiv = "." + url.target + ' td:nth-child(3)';
//alert(targetreleasediv);
//alert(targetdescdiv);
$(targetreleasediv).html(sData.env.v);
$(targetdescdiv).html(sData.env.desc);
},
fail: function(jqXHR, textStatus, errorThrown){
alert("Error " + jqXHR.responseText+ " error thrown is " + errorThrown + " status is " + textStatus);
var targetreleasediv = "." + url.target + ' td:nth-child(2)';
var targetdescdiv = "." + url.target + ' td:nth-child(3)';
//$(targetreleasediv).html("server is currently down");
//$(targetdescdiv).html("server is currently down");
}
});
});
});
});
Вот массив json с URL:
{
"env":{
"urls":[
{
"path":"http://server.domain.com/server/webcontent/js/evt2_server1.js",
"target":"env2-server"
},
{
"path":"http://server.domain.com/server/webcontent/js/evt2_server2.js",
"target":"env2-server2"
}
]
}
}
Вот строка json, на которую возвращается запрос
{"env":{"v":"Tag_12345","desc":"Test of purpose"}}
Теперь я, когда я отправляю страницу, я получаю запросы json ajax, но не вызывается метод done или fail.