Спасите, помогите... checkbox

bezludny
На сайте с 04.03.2009
Offline
42
#11
x-mobi.ru:
А вот их еще можно удалить кнопочкой "Удалить поле" :) Не прокатит вариант.
В общем не решаема задача в данной постановке :D

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

ref
На сайте с 21.11.2004
Offline
91
ref
#12

x-mobi.ru, а зачем у всех чекбоксов value =1? Почему нельзя их сделать равным порядковому номеру бокса?

с уважением, Леонид
x-mobi.ru
На сайте с 30.12.2007
Offline
88
#13
ref:
x-mobi.ru, а зачем у всех чекбоксов value =1? Почему нельзя их сделать равным порядковому номеру бокса?

Не известен порядковый номер... это редактор характеристик товаров, можно добавлять, удалять, сортировать данные и т.п., но кол-во заранее не известно.

x-mobi.ru добавил 29.03.2009 в 18:03

bezludny:
Нерешаемых задач не бывает. Вам нужно просто вычислить более-менее постоянные данные, от которых можно отталкиваться для работы с геморными чекбоксами.

В данном случае нерешаема, более менее постоянных нет. В общем нужно объединить поля, которые должны быть в равном количестве, в 1 массив, поля - 1 уровень, данные полей - 2 уровень. Иначе чексбокс сведет сума.

p.s. убедился, что я и никто другой данную проблему не решит, тогда пойду менять...)

p.p.s. а, да, если использовать порядковые номера, можно было бы их обновлять у каждого поля при каждом удалении/обновлении полей, но это опять же JS и костыль.

О_о
[Удален]
#14

x-mobi.ru, получите JS значение всех существующих чекбоксов и их обрабатывайте

в чем проблема?

x-mobi.ru
На сайте с 30.12.2007
Offline
88
#15
burunduk:
x-mobi.ru, получите JS значение всех существующих чекбоксов и их обрабатывайте
в чем проблема?

В неуниверсальности :) Такие решения тяжелые и требующие доработки любого интерфейса, когда как сделав 1 раз все правильно, можно использовать и более. Чем я и займусь.

bezludny
На сайте с 04.03.2009
Offline
42
#16

Действительно, можно попробовать повесить обработчик на onsubmit формы, и в нем попробовать пошаманить перед отправкой...

x-mobi.ru
На сайте с 30.12.2007
Offline
88
#17
bezludny:
Действительно, можно попробовать повесить обработчик на onsubmit формы, и в нем попробовать пошаманить перед отправкой...

А так не охото везде костыли подставлять...) Ладн, всем спасибо, парочка решений проблемы наметилась.

[Удален]
#18
x-mobi.ru:
В неуниверсальности

в чем?

создание массива дочерних элементов определенного типа и проверка/установка их значений

DyaDya
На сайте с 11.04.2007
Offline
147
#19

x-mobi.ru, вы сказали, что используете свой код для ввода параметров у товаров и т.п.

Так каждый параметр вродя имеет свой уникальный id, почему незя сделать типа такого?


<input type="checkbox" name="name[999]" value="1" />
<input type="checkbox" name="name[45]" value="1" checked />
<input type="checkbox" name="name[865]" value="1" />
...

А при получении данных, конечно же нужно будет сравнить полученные установленные значения параметров с теми, что хранятся в базе и обновить в базе значения. Если параметр не получен, значит, он не установлен.

---

А то, что чекбоксы отсылаются только выбранные - это вполне логично и оспаривать не следует).

И вы не боитесь, что пока вы будете работать с параметрами, другой пользователь добавит новый параметр и их число в базе изменится. Как вы будете сопоставлять полученные параметры с параметрами в базе (их же уже будет больше на 1).

p.s. ТС, наверное, вы используете "компоненты" в программировании.

Выбирайте качественный хостинг (http://vashmaster.ru/informaciya/o_poleznyh_programmah/news83.php) и продвигайте сайты в СЕОПУЛЬТ (http://seopult.ru/ref.php?ref=72b5ed9561fe66a1). А на «SAPE» я в обиде :) Не упрекайте за очепятки, пишу вслепую (http://ergosolo.ru/) и также делаю сайты (http://www.vashmaster.ru/) ;)
x-mobi.ru
На сайте с 30.12.2007
Offline
88
#20
burunduk:
в чем?

Ну, перечитайте мой пост.

Просто мой php-класс может брать значения из одноуровневых массивов принятых из формы, с заранее не не известными ключами... но только одноуровневых, вот нужно сделать рекурсивную проверку любой вложенности. Данные то приходят в таком виде $_POST['name'][0], а имя поля то name[] - ключа нету, приходится в каждый запуск метода, выводящего такой элемент, делать инкремент счетчика, получая при этом номер ячейки. С многоуровневыми массивами нужно делать рекурсию...

Но это уже не проблема. А вот то, что чекбокс стандартно не отправляет пустые данные - это проблема)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий