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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> повесить функцию на textarea 
V
    Опции темы
Samotnik
Дата 22.2.2008, 15:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


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

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



Добрый  день !
Значит есть  textarea  (я ее создаю  так)
Код

var textar = document.createElement("textarea");
    textar.setAttribute("rows", "5");
    textar.setAttribute("cols", "5");
    this.baseElement.appendChild(textar);

Нужно сделать:  Пользователь вводит число (n) в  textarea  и страничка обновляется каждые  n секунд, которые ввел пользователь.   
К примеру: юзер ввел туда  5,   значит каждые 5  секунд, страничка бут обновляться !!!  
Функция обновления есть, нужно както  ее вызвать 
 smile

Добавлено через 3 минуты
и еще вопрос:
Как считать, то число, которое ввел пользователь и передать это число в функцию обновления ???
PM MAIL   Вверх
zibox86
Дата 22.2.2008, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Вынемаешь значение 
Код

interval = document.getElement('ID').value;

А по том подставляешь!
Код

setTimeout('Функция или что там нужно',interval);


Добавлено через 7 минут и 4 секунды
А еще проще вот так из html
Код

<input type="textarea" name="text" onBlur="javascript: setTimeout(Функция, this.value)">

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


Super star !
****


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

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



zibox86,  пасибо, а как скзать  функции  setTimeout  что ей пора срабатывать ??

Добавлено через 2 минуты и 37 секунд
Цитата(zibox86 @  22.2.2008,  15:10 Найти цитируемый пост)
А еще проще вот так из html

не,  с  html   нельзя   smile    у меня  фацл    .js   там  низя

Добавлено через 7 минут и 47 секунд
Я не понимаю, как эта функция вызываться будет  smile    
Ведь мне нужно, чтобы она автоматически срабатывала, без нажатия  кнопок,  порсто  вводиш число и сразу начинается обновление страницы, каждые  n  секунд
PM MAIL   Вверх
zibox86
Дата 22.2.2008, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Придется в texarea сделать событие вызывающие нужную функцию,
а в конце это функции вставить setTimeout()
Код

<input type="textarea" onBlur="load(this.value)">

Код

function load($interval)
{
// сама функция
setTimeout(load(),$interval);
}

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


Super star !
****


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

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



zibox86,  а как  без   html   ???   мне с  ним  нельзя  smile
PM MAIL   Вверх
zibox86
Дата 22.2.2008, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Есть еще возможность запустить функцию при загрузке страницы!

PM MAIL WWW   Вверх
solenko
Дата 22.2.2008, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Код

<html>
<head>
<script>
function createTextarea() {
    var ta = document.createElement('textarea');
    document.body.appendChild(ta);
    ta.onchange = textChanged;
    
}
function textChanged(evt) {
    evt = evt?evt:window.event;
    var target = evt.target?evt.target:evt.srcElement;
    if ('interval_id' in target) {
        clearInterval(target.interval_id);
    }
    target.interval_id = setInterval(intervalFunction, parseInt(target.value));
}
function intervalFunction() {
    alert('11');
}
</script>
</head>
<body>
<button onclick="createTextarea();">Click me!</button>
</body>
</html>



--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
Samotnik
Дата 22.2.2008, 15:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


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

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



solenko,  мне нельзя  использовать  html  теги  и кнопки !!  smile 
Мне нужно, чтобы загрузилась страница,  юзер ввел в  текстарею  число  n   и чтоб страница после этого начала  каждые  n  секунд обновляться   smile     при том реализовать все на  js  без  html

Добавлено через 1 минуту и 49 секунд
и не использовать  кнопки !!! 
PM MAIL   Вверх
solenko
Дата 22.2.2008, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



А вы на исходник внимательней посмотрите. Кнопка нужна только для вызова функции, создающей textarea и аналогичную той, которую вы привели в начале топика. 


Это сообщение отредактировал(а) solenko - 22.2.2008, 15:44


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
Samotnik
Дата 22.2.2008, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


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

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



solenko,  блин, так кнопки не должно быть вообще   и   тегов   html  тоже    smile
PM MAIL   Вверх
solenko
Дата 22.2.2008, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



smile Ну нужно же мне откуда-то вызывать createTextarea? У вас же в скрипте каким-то образом туда управление попадает?

Добавлено через 1 минуту и 20 секунд
Код

var textar = document.createElement("textarea");
    textar.setAttribute("rows", "5");
    textar.setAttribute("cols", "5");
    this.baseElement.appendChild(textar);
    textar.onchange = textChanged;

function textChanged(evt) {
    evt = evt?evt:window.event;
    var target = evt.target?evt.target:evt.srcElement;
    if ('interval_id' in target) {
        clearInterval(target.interval_id);
    }
    target.interval_id = setInterval(intervalFunction, parseInt(target.value));
}
function intervalFunction() {
    alert('11');
}


Добавлено через 6 минут и 50 секунд
Стоп, кажется я туплю... Вам нужно чтобы страницу обновлялась, т.е. именно полная перезагрузка страница, а не аджаксовое обновление какого-то элемента?


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
Samotnik
Дата 22.2.2008, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


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

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



Цитата(solenko @  22.2.2008,  15:53 Найти цитируемый пост)
Стоп, кажется я туплю... Вам нужно чтобы страницу обновлялась, т.е. именно полная перезагрузка страница, а не аджаксовое обновление какого-то элемента?

не совсем так,..  и не так  и не так  smile))    грубо говоря, мне нужно, чтобы каждые  n  секунд, срабатывала  одна  моя  функция. По сути она обновляет страницу, но не совсем ,....  

Это сообщение отредактировал(а) Samotnik - 22.2.2008, 16:05
PM MAIL   Вверх
Nigel
Дата 22.2.2008, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


познаю мир
**


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

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



Samotnik, может напишите тогда, что "можно"? Если просто нужно повесить обработчик, то тогда, как написал solenko
Код

textar.onchange = textChanged;

Чем этот вариант не устраивает?
PM MAIL   Вверх
Samotnik
Дата 22.2.2008, 16:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


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

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



Цитата(Nigel @  22.2.2008,  16:05 Найти цитируемый пост)
 напишите тогда, что "можно"?

ну ..  я думаю, единтственный  выход, это  использование  onBlur   т.е.  ввел число,  клацнул  куда - нить  и  начала вызываться моя функция (назовем ее обновление)

Добавлено через 3 минуты и 34 секунды
Я вот так вот  пытаюсь  сделать
Код

var data = "";
 var textar = document.createElement("textarea");
    textar.setAttribute("rows", "5");
    textar.setAttribute("cols", "5");
    this.baseElement.appendChild(textar);
    var interval = document.getElement('ID').value;
    textar.onblur = setTimeout(sfSystem.callAction("NewAction", data, this.getInfoCallback, this), interval);

но блин,   нифига  не работает     smile   smile  smile 
PM MAIL   Вверх
solenko
Дата 22.2.2008, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Samotnik, ага, obblur единсвенный выход кроме onchange, onkeypress, onkeydown, onkeyup, а по совместительству самый нелогичный.

Добавлено через 1 минуту и 24 секунды
Код

sfSystem.callAction("NewAction", data, this.getInfoCallback, this)

что возращает?

Добавлено через 2 минуты и 47 секунд
Код

document.getElement('ID').value;

Так у вас число в textarea вводится, или в какой-то элемент с id="ID" ?


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


 




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


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

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