Модераторы: Sardar, Aliance

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> обновить окошко написанное на AJAX 
V
    Опции темы
Samotnik
Дата 18.2.2008, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Значит есть приложение, написанное на AJAX   значит в нем по нажатию на кнопочку появляется окошко с различной инфой.  Так вот в это окошко нужно прописать кнопочку, по нажатию на  которое  окошечко будет обновлятся, и следовательно показывать новую инфу...  
Вот значит, внимание вопрос, как обновить это окошечко  ??   Метод 
Код

onclick="window.location.reload();

не пойдет, т.к.  будет обновлятся все приложение вцелом!!  А мне нужно тока одно окошечко  
 smile 
PM MAIL   Вверх
Itsys
Дата 18.2.2008, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 12
Всего: 34



Все просто надо снова запустить обработчик onClick первоначальной кнопки (там скорее всего указана определенная функция, которая отвечает за загрузку информации), и, если все сделано правильно, то функция сама обновит информацию в окошке, а если не правильно, то придется сначала очистить существующее окно (оно скорее всего сдлеано div-ом) .innerHTML = "";

Если ты приведешь код, то разговор будет более подробным  smile 
PM MAIL WWW Skype   Вверх
Хрипа
Дата 18.2.2008, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 227
Регистрация: 11.12.2006

Репутация: нет
Всего: нет



Samotnik, делай новый Ajax запрос и получай инфу smile 
--------------------
<Вырезана, как не соответствующая правилам форума >
PM MAIL   Вверх
Samotnik
Дата 18.2.2008, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Хрипа,   не  smile    так нельзя   (по мои  причинам)
PM MAIL   Вверх
Itsys
Дата 18.2.2008, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 12
Всего: 34



Покажи существующий код
PM MAIL WWW Skype   Вверх
Samotnik
Дата 18.2.2008, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Цитата(Itsys @  18.2.2008,  16:42 Найти цитируемый пост)
Если ты приведешь код, то разговор будет более подробным
 
 smile   Конечно, все очень просто,  есть 2 функции  1-я отправляет запрос на сервер,  2-я принимает ответ и отображает инфу  
Код

com_main.prototype.init = function() {
    var dlg = this.dlg = this.task.dlg;
    var butn = document.createElement('input');
    butn.type="button";
    butn.value = 'Refresh';
    butn.onclick = ' что сюда написать, чтоб окошко  обновилось ??????';
    this.task.dlg.getContentDiv().appendChild(butn);

    dlg.getContentDiv().style.overflow = "hidden";
    var data = "";
    sfSystem.callAction("NewAction", data, this.callback, this);
}

com_main.prototype.callback = function(res, _this) {
    res = sfSystem.fromJSON(res.responseText);
    if (res.fault) {
        alert(res.fault);
    } else {
        var t = document.createElement('textarea');
        t.setAttribute("rows", "20");
        t.setAttribute("cols", "100");
        t.value = res.result;
        _this.task.dlg.getContentDiv().appendChild(t);
    }
}

PM MAIL   Вверх
Royan
Дата 18.2.2008, 17:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Dreamer
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 14.9.2002
Где: Лондон

Репутация: 1
Всего: 15



Если win instanceof Window возвращает true (класс Window поддерживает только FF, поэтому я это говорю только для того чтобы однозначно определить разницу между классом Window и всеми остальными классами). Так вот если это так то можно так:

Код

win = window.open("http://www.google.com", "mywin", "width=200, height=200")
setTimeout(function(){win.location="http://ya.ru"}, 5000);



--------------------
Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь
PM MAIL MSN   Вверх
Samotnik
Дата 18.2.2008, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Royan,  чет  я не особо понял, что тут выполняется ??
ПЭ.Эс.
Можно ли как нить словить фокус моего окошка и написать  
Код

window.location.reload();

но тока для моего окна ??  Или  для  AJAX   этот   метод вообще не приемлем ???
PM MAIL   Вверх
Nigel
Дата 18.2.2008, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


познаю мир
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 20.11.2007

Репутация: нет
Всего: 19



А если так
Код

butn.onclick = function(){self.location.href='http://ya.ru';}

PM MAIL   Вверх
Itsys
Дата 18.2.2008, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 12
Всего: 34



Код

com_main.prototype.init = function() {
    var dlg = this.dlg = this.task.dlg;
    var butn = document.createElement('input');
    butn.type="button";
    butn.value = 'Refresh';
    butn.onclick = function(){var data = ""; sfSystem.callAction("NewAction", data, this.callback, this);};
    this.task.dlg.getContentDiv().appendChild(butn);

    dlg.getContentDiv().style.overflow = "hidden";
    var data = "";
    sfSystem.callAction("NewAction", data, this.callback, this);
}


А дальше в callback надо определить если 'textarea' есть - то обновить, если нет, то создать
PM MAIL WWW Skype   Вверх
Samotnik
Дата 18.2.2008, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Цитата(Itsys @  18.2.2008,  17:29 Найти цитируемый пост)
А дальше в callback надо определить если 'textarea' есть - то обновить, если нет, то создать

Пасибо большое, то что надо !!!!   smile 
а как ??  smile 
PM MAIL   Вверх
Itsys
Дата 18.2.2008, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 12
Всего: 34




Определи t заранее

Код

com_main.prototype.callback = function(res, _this) {
    res = sfSystem.fromJSON(res.responseText);
    if (res.fault) {
        alert(res.fault);
    } else {
        if (_this.t){
            _this.t.value = res.result;
        }
        else {
            _this.t = document.createElement('textarea');
            _this.t.setAttribute("rows", "20");
            _this.t.setAttribute("cols", "100");
            _this.t.value = res.result;
            _this.task.dlg.getContentDiv().appendChild(_this.t);
        }
    }
}


PM MAIL WWW Skype   Вверх
Samotnik
Дата 18.2.2008, 18:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Itsys,  пасибо   smile 
PM MAIL   Вверх
Sardar
Дата 18.2.2008, 19:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(Samotnik @  18.2.2008,  16:08 Найти цитируемый пост)
Можно ли как нить словить фокус моего окошка и написать

Samotnik, как открыл окно? window.open? тогда тебе возвращается хендл окна, от него .location.reload() как показал Royan.
Если это слой на абсолютной позиции, то отдельным запросом сменяем (в простейшем случае) всё содержимое слоя, prototype.js/Ajax.Updater готовое решение.



M
Sardar
Ну и вопросы в последние две недели, как будто толпа с улицы открыла для себя браузер...  Особено убивают пояснения "в JS noль" или "только открыл"... 1 сутки на мануал позволит себе любой...
Мля наболело =)



--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Samotnik
Дата 18.2.2008, 19:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Цитата(Sardar @  18.2.2008,  19:37 Найти цитируемый пост)
 1 сутки на мануал позволит себе любой...

может поможите ссылочкой ??   чтоб  таких вопросов больше небыло ??? 
 smile 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0566 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.