Форум программистов, компьютерный форум, киберфорум
Наши страницы
JavaScript
Войти
Регистрация
Восстановить пароль
 
444866
-1 / 3 / 2
Регистрация: 11.01.2012
Сообщений: 267
#1

Не работает аякс - JavaScript

21.09.2012, 14:36. Просмотров 649. Ответов 6
Метки нет (Все метки)

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
function GetXmlHttp() {
    var xmlhttp;
    try {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try {
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (E) {
            xmlhttp = false;
        }
    }
    if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
        xmlhttp = new XMLHttpRequest();
    }
    return xmlhttp;
}
 
 
function WebRequest(url, data, cb, async) {
    var xmlhttp = GetXmlHttp();
 
    xmlhttp.open("POST", url + '?random=' + Math.random(), async);
 
    xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");//На этих 3 строчках ругается что  xmlHttp не определен и дальше запрос не идет.  Хотя в отладчике он значение undefined не имел.
    xmlHttp.setRequestHeader("Content-length", data.length);//
    xmlHttp.setRequestHeader("Connection", "close");//
 
    xmlhttp.onreadystatechange = function () {
        if (xmlhttp.readyState == 4 && cb!=null) {
            cb(
            xmlhttp.status, 
            xmlhttp.getAllResponseHeaders(), 
            xmlhttp.responseText
            );
        }
    }
    xmlhttp.send(data);
    return xmlhttp.responseText;
В комментариях описал проблему.

и еще что можно сделать с кешированием в ИЕ? помимо
Javascript
1
?random=' + Math.random()
Слышал заголовок нужно установить. но какой?
http://www.cyberforum.ru/javascript/thread153701.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.09.2012, 14:36
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Не работает аякс (JavaScript):

Объекты и аякс
Пишу функцию для аякс-запроса (и заодно пытаюсь научиться использовать объекты...

Аякс поиск с скрытием блоков
есть конструкция: <input type="text" > <div class="accordion"> ...

подгрузка картинки через аякс
Вопрос в том, что я хочу подгрузить картинку а не текст..Ну, он подгружает тег...

Как убрать предыдущий аякс-запрос
Задача такая: В модальном окне вызываются 2 связанных списка (регионы+города)....

Подскажите как сделать аякс окно?
Нужно сделать при нажатие на кнопку открылось окно, в нём открывался сайт и...

6
moskitos80
64 / 64 / 30
Регистрация: 04.10.2011
Сообщений: 232
Завершенные тесты: 1
21.09.2012, 15:19 #2
Цитата Сообщение от 444866 Посмотреть сообщение
что можно сделать с кешированием в ИЕ?

Javascript
1
'...?nocashe=' + (new Date()).getTime();
0
444866
-1 / 3 / 2
Регистрация: 11.01.2012
Сообщений: 267
21.09.2012, 16:58  [ТС] #3
Цитата Сообщение от moskitos80 Посмотреть сообщение

Javascript
1
'...?nocashe=' + (new Date()).getTime();
Ога смешно). По первому вопросу, кто-нибудь в теме?
0
moskitos80
64 / 64 / 30
Регистрация: 04.10.2011
Сообщений: 232
Завершенные тесты: 1
21.09.2012, 17:17 #4
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
    function GetXmlHttp() {        
        try{return new ActiveXObject("Microsoft.XMLHTTP");}catch(e){};
        try{return new XMLHttpRequest();}catch(e){};
        return false;
    }
 
    function WebRequest(url, data, cb, async) {
        var xhr = GetXmlHttp();
        
        if (xhr === false) {
            alert("Не судьба использовать AJAX - обновите браузер :)");
        }
     
        xhr.open("POST", url + '?random=' + Math.random(), async);
     
        xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        //xhr.setRequestHeader("Content-length", data.length); // не нужно: Refused to set unsafe header "Content-length"
        //xhr.setRequestHeader("Connection", "close"); // не нужно: Refused to set unsafe header "Connection"
        
        xhr.onreadystatechange = function () {
            if (xhr.readyState == 4 && cb!=null) {
                cb(
                xhr.status, 
                xhr.getAllResponseHeaders(), 
                xhr.responseText
                );
            }
        }
        xhr.send(data);
        //return xhr.responseText; // Здесь xhr.responseText - ещё нет !
    }
    
    WebRequest('server.php', "alpha=1&betha=2&gamma=3", function(){alert("OK!!!")}, true);
0
444866
-1 / 3 / 2
Регистрация: 11.01.2012
Сообщений: 267
21.09.2012, 23:28  [ТС] #5
и опять же отладчик дохнет на xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
0
moskitos80
64 / 64 / 30
Регистрация: 04.10.2011
Сообщений: 232
Завершенные тесты: 1
22.09.2012, 13:50 #6
Какой отладчик используется?
0
444866
-1 / 3 / 2
Регистрация: 11.01.2012
Сообщений: 267
22.09.2012, 23:16  [ТС] #7
Стандартный ИЕ. Да и в других браузерах дохнет.
0
22.09.2012, 23:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.09.2012, 23:16
Привет! Вот еще темы с решениями:

АЯКС-ом забрать массив из базы данных
Есть база, в которой в таблице лежат данные о сеансах (время старта, время...

Отработать аякс при закрытии окна/вкладки
Обрыл(обгуглил, обяндексил, скурил) много мануалов, но не нашел.... Поэтому...

супер аякс форм добавить еще одну форму?
каким путем можно добавить еще одну форму? если в xml добавить дополнительно...

Аякс для уже загруженого через аякс контента?
Здравствуйте! Скажите пожалуйста - как можно сделать чтоб работал аякс для уже...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru