Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Никита Козин 14.02.2005 06:59
Все гораздо хуже. Таблицы беруться из формы 8), см. tables. Получение множества значений поля@auto[] ^if(def $form:fields){ ^rem{### спектакли ###} $perfomances[$form:tables.perfomance] ^rem{### актеры ###} $actors[$form:tables.actor] ^rem{### роли ###} $roles[$form:tables.role] } # end @auto[] ############################## @form[] ^rem{### Скрипт, дублирующий и удаляющий строки таблицы ###} <script language="JavaScript"> function drop(btn){ if(document.getElementById) { tr = btn; while (tr.tagName != 'TR') tr = tr.parentNode; tr.parentNode.removeChild(tr); checkForLast(); } } function add(btn){ if(document.getElementById) { tr = btn; while (tr.tagName != 'TR') tr = tr.parentNode; var idSuffix = Math.round(Math.random()*1000); var newTr = tr.parentNode.insertBefore(tr.cloneNode(true),tr.nextSibling); thisChilds = newTr.getElementsByTagName('td'); for (var i = 0; i < thisChilds.length; i++){ if (thisChilds[i].className == 'role') thisChilds[i].innerHTML = '<input type="text" name="role" value="">'; } checkForLast(); } } function checkForLast(){ btns = document.getElementsByName('drop'); for (i = 0; i < btns.length; i++){ btns[i].disabled = (btns.length == 1) ? true : false; } } </script> <form action="$request:uri" method="post"> <table cellspacing="0" cellpadding="0" border="0"><tr><td> <table cellspacing="0" cellpadding="2" border="0"> <tr> <td>Спектакль:</td> <td>Актер:</td> <td>Роль:</td> <td colspan="2">^spacer[]</td> </tr> <tr> <td> ^rem{### Список спектаклей ###} <select name="perfomance"> <option value=""></option> ^perfomances.menu{ <option value="$perfomances.id">$perfomances.title</option> } </select> </td> <td> ^rem{### Список актеров ###} <select name="actor"> <option value=""></option> ^actors.menu{ <option value="$actors.id">$actors.name</option> } </select> </td> <td class="role"> ^rem{### Роль выбранного актера в выбранном спектакле ###} <input type="text" name="role" value=""> </td> <td><input type="button" name="drop" value=" - " onClick="drop(this)^;"></td> <td><input type="button" value=" + " onClick="add(this)^;"></td></td> </tr> </table> <script language="Javascript">if(document.getElementById) checkForLast();</script> </td></tr></table> <input type="submit" value="Добавить"> </form> # end @form[] ##############################