Автор Тема: Выделить всё  (Прочитано 7451 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Выделить всё
« : 04 Марта 2004, 17:32:30 »




...........................
и т.д.

Как сделать чекбокс, при выделении которого выделятся все вышеперечисленные чекбоксы?

Искал в Интернете различные варианты CheckAll(), пробовал, ни один не работает.
Чем меньше букв, тем ёмче слово.

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Выделить всё
« Ответ #1 : 04 Марта 2004, 17:45:52 »
сделай себе ящик на mail.ru и посмотри как там такая фича при удалении писем сделана
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Выделить всё
« Ответ #2 : 04 Марта 2004, 17:54:19 »
Макс
Я смотрел не только на mail.ru, но и в других местах Там в поле "name" стоит не массив, а одна и та же переменная, соответственно для оптимизации под себя в их коде что-то надо менять, а я не знаю что. Может быть, их способ передачи данных и более эффективен, но я же не могу посмотреть их php-код.
Чем меньше букв, тем ёмче слово.

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Выделить всё
« Ответ #3 : 04 Марта 2004, 19:10:45 »
Skyer
:) ты думаешь mail.ru на ПХП написан ?
попробуй помечать чекбоксы через масив form.elements
типа
document.form_name.elements[index].checked = true
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Выделить всё
« Ответ #4 : 04 Марта 2004, 19:12:32 »
Макс
Приведи полный пример кода, я плохо в этом разбираюсь.
Чем меньше букв, тем ёмче слово.

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Выделить всё
« Ответ #5 : 04 Марта 2004, 19:26:29 »
а волшебное слово ? ;)
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Выделить всё
« Ответ #6 : 04 Марта 2004, 19:44:37 »
"В темпе!":)

Пожалуйста:)
Чем меньше букв, тем ёмче слово.

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Выделить всё
« Ответ #7 : 04 Марта 2004, 19:47:06 »








First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Выделить всё
« Ответ #8 : 04 Марта 2004, 20:13:13 »


Я так понимаю, в таком случае элементы массива "a" будут увеличиваться на 1?

Я неправильно описал:( У меня массив item[] не всегда увеличивается на 1, бывают разные значения.
Чем меньше букв, тем ёмче слово.

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Выделить всё
« Ответ #9 : 04 Марта 2004, 20:17:05 »
Но вообще подожди, я попробую оптимизировать
Чем меньше букв, тем ёмче слово.

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Выделить всё
« Ответ #10 : 04 Марта 2004, 21:37:27 »
Цитировать
Skyer:
У меня массив item[] не всегда увеличивается на 1, бывают разные значения.
для моего варианта это не имеет значения.
Главное чтобы
 - все чекбоксы в форме располагались по подряд (чтобы между ними не было других элементов формы), хотя это можно обойти.
 - и нужно правильно задать начальный и конечный индексы чекбоксов в массиве elements
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Выделить всё
« Ответ #11 : 13 Апреля 2004, 02:38:51 »
Макс
Спасибо! Последний вариант сработал.

И последний вопрос - как сделать так, чтобы при повторном нажатии этой кнопки галочки снимались?
Чем меньше букв, тем ёмче слово.

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
Выделить всё
« Ответ #12 : 13 Апреля 2004, 09:43:38 »

function setCheckboxes(the_form, do_check)
{
    var elts      = document.forms[the_form].elements[\'selected_item[]\'];
    var elts_cnt  = (typeof(elts.length) != \'undefined\')
                  ? elts.length
                  : 0;

    if (elts_cnt) {
        for (var i = 0; i < elts_cnt; i++) {
            elts[i].checked = do_check;
        }
    } else {
        elts.checked        = do_check;
    }

    return true;
}
AS IS...

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Выделить всё
« Ответ #13 : 13 Апреля 2004, 19:44:34 »
ThE0ReTiC
Я заменил функцию Макса на твою функцию. Не работает. Что ещё нужно сделать?
Чем меньше букв, тем ёмче слово.

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
Выделить всё
« Ответ #14 : 14 Апреля 2004, 10:03:22 »
Цитировать
ThE0ReTiC:
\'selected_item[]\'

заменить на имя твоего чекбокса
ну и передать в функцию правилльные значения переменных
И хватит заниматься Copy/Paste
Для этого есть отдельный форум
AS IS...

 

Sitemap 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