xTODx, а нафига все эти пляски? Нафиг менять name?
Я почему-то уверен что этого делать не нужно, и все решается проще. |
Цитата:
А зачем каждые n секунд менять номера? И зачем в $_POST что-то проверять в цикле? Если не в курсе, то в $_POST можно передать поля ввиде массива, это такая фишка php-шная(не только) :) <input name="name[]"> <input name="name[]"> var_dump($_POST); |
та понятно что каждые n секунд не буду обновлять номера, только когда действие произошло какое то, временно поставил просто.
По поводу name="name[]" это спасибо. правда всё-равно в цикле foreach нужно работать будет, буду отправлять в базу данных, с каждого))) Только скорее всего будет name="1['name']" и т.д.)) потому что нужно по будет брать массив $_POST[1], 2 и т.д. и каждая ячейка будет ещё иметь параметры name и т.д. p.s: функцию нумерации вызываю при наведении на кнопку, которая при нажатии передаёт данные в php |
Так че в итоге, избавился от ручной нумерации name'ов?
|
нет, всё на много важнее. у меня дрегбатлом и сортаблом, перетаскиваю нужные элементы в поле, они сортируются, в них есть некие параметры, которые либо каждому блоку изначально свои заданы, а некоторые меняются юзером, потом выбраные сохраняются)
|
function sorta(){ $("#sortable li").each(function(i){ numb = (++i); $(this).find("input").each(function(){ var names = $(this).attr('name'); names = names.replace(/[^a-z]/g, ''); names = names.replace(']', ''); names = names.replace('[', ''); $(this).attr('name', numb+'['+names+']'); }); }); } Вот конечный код) нумерует все input в #sortable li одним номером, в следующем таком #sortable li, следующим номером |
То есть на странице порядок самих инпутов остается неизменным. "Сортируются" просто их имена, верно?
|
ну тот который мы поставили первым, и будет первым, переставим его на второе место, будет вторым)
|
xTODx, ок. А зачем менять их имена? Они же и так в массиве будут в том порядке, в котором расположены на странице?
|
в каждом элементе сортабл, есть поля с одним и тем же name. как я с $_POST вызову $_POST['name']??? )
|
Часовой пояс GMT +3, время: 21:32. |