Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Не работает ajax от jQuery в IE (https://javascript.ru/forum/misc/43079-ne-rabotaet-ajax-ot-jquery-v-ie.html)

EvgLuch 21.11.2013 04:28

Не работает ajax от jQuery в IE
 
Возникла такая проблема:
Есть html-таблица, куда через ajax от jquery попадают каждую секунду данные из json-файла (php забирает данные из json и этот php уже обрабатывается и из него берутся необходимые значения). Всё работает в Firefox, Google Chrome, но в IE код не срабатывает. Версия IE восьмая, пробовалось в 7-й, 11-й - аналогично. Данные загружаются в ячейки и тут же замирают - обновление стопорится. Так же есть див, в который помещено текущее время сервера - оно тоже загружается один раз и стопорится - следущая секунда уже не рефрешится. Использую функцию getJSON. Вот часть кода для определённой части таблицы:

function getJSON(url) {
$.getJSON( url, function( data ) {
$.each( data, function( key, val ) {
$.each(val, function(k, v) {
$('#' + key + '-' + k).removeAttr('class').addClass("alert-" + v.alert).html(v.value);
if((parseFloat(v.value)) < -32000 ) {
$('#' + key + '-' + k).addClass("number").text("N/D");
};
$('#clock').html("JSON time: " + data.XBO001.DTS);
});
});
});
}


Кто-нибудь сталкивался с такой проблемой? Как её можно устранить?

EvgLuch 25.11.2013 02:55

Цитата:

Сообщение от Rise (Сообщение 282169)
Части кода не достаточно.

$(document).ready(function() {
getJSON("get_json.XBO.php");
getJSON("get_json.tgk.php");
getJSON("get_json.reg.php");
setInterval(function() {
getJSON("get_json.XBO.php");
getJSON2("get_json.tgk.php");
getJSON3("get_json.reg.php");
}, 10000);
});

function getJSON(url) {
$.getJSON( url, function( data ) {
$.each( data, function( key, val ) {
$.each(val, function(k, v) {
$('#' + key + '-' + k).removeAttr('class').addClass("alert-" + v.alert).html(v.value);
if((parseFloat(v.value)) < -32000 ) {
$('#' + key + '-' + k).addClass("number").text("N/D");
};
$('#clock').html("JSON time: " + data.XBO001.DTS);
});
});
});
}

$(document).ready(function() {

getJSON();
setInterval(getJSON2, 1000);
});

function getJSON2() {
$.getJSON( "get_json.tgk.php", function( data ) {
$.each( data, function( key, val ) {
$.each(val, function(k, v) {
$('#' + key + '-' + k).html(v.value);
if((parseFloat(v.value)) > 100.00) {
$('#' + key + '-' + k).addClass("alert-3");
}
else {$('#' + key + '-' + k).removeClass("alert-3")};
});
});
});
}

$(document).ready(function() {

getJSON();
setInterval(getJSON3, 10000);
});

function getJSON3() {
$.getJSON( "get_json.reg.php", function( data ) {
$.each( data, function( key, val ) {
$.each(val, function(k, v) {
$('#' + key + '-' + k).html(v.value);
if((parseFloat(v.value)) > 1000.00) {
$('#' + key + '-' + k).addClass("alert-3");
}
else {$('#' + key + '-' + k).removeClass("alert-3")};
});
});
});
}

рони 25.11.2013 03:14

EvgLuch,
какая версия jQuery?

EvgLuch 25.11.2013 08:59

Цитата:

Сообщение от рони (Сообщение 282572)
EvgLuch,
какая версия jQuery?

/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license */

Пробовал менять версии - не помогало. Может, шило на мыло менял. ))) Какая версия актуальная для данной ситуации, можете подсказать?

Soul D Esire 25.11.2013 10:48

А ты вешал вызов функции на кнопку, не по таймеру?
Если щелкаешь по кнопке с периодичностью в одну секунду, данные нормально обновляются? =)

рони 25.11.2013 11:29

EvgLuch,
поддержка ие была до версии 1.9.1 попробуйте jquery-migrate он возвращает поддержку старых браузеров

пример

EvgLuch 27.11.2013 01:53

Цитата:

Сообщение от рони (Сообщение 282602)
EvgLuch,
поддержка ие была до версии 1.9.1 попробуйте jquery-migrate он возвращает поддержку старых браузеров

пример

Попробовал - не помогло. :-?

EvgLuch 27.11.2013 01:55

Кто-нибудь может ещё что-нибудь предложить? :help:

Неужели нет решения для IE?

ruslan_mart 27.11.2013 10:50

EvgLuch, поставьте jQuery версии 1.8.

EvgLuch 28.11.2013 09:20

Цитата:

Сообщение от Ruslan_xDD (Сообщение 283076)
EvgLuch, поставьте jQuery версии 1.8.

Не помогает! :no: :(


Часовой пояс GMT +3, время: 02:03.