Для большенства задач сервисы(модули) католог сайтов, файлов и объявлений предоставляют достаточное кол-во полей для заполнения. Включить поля и сделать их обязательными можно в настройках данного сервиса. Переименовать названия полей можно в разделе "Замена стандартных надписей". Если же требуется еще поля или необходимо создать более сложную форму чем форма из текстовых полей, то действуем следующим способом: Создаем дополнительную форму в шаблоне "Добавления/редактирования материала": Code <form name="newform"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr><td width="35%">Название поля 1</td><td><input name="pole1" type="text" id="pole1" style="width:250px;"></td></tr> <tr><td width="35%">Название поля 2</td><td><input name="pole2" type="text" id="pole2" style="width:250px;"></td></tr> </table> </form> Количество, название и тип полей зависит от конкретной задачи. Выше приведен только пример. Все дополнительные поля мы будем сохранять в поле "Краткий текст", так что он должен быть включен в настройках и не использоваться по назначению, также настройте необходимое кол-во символов для этого поля. Обводим основную форму в именованный объект и добавляем новую кнопку сохранения материала: Code <div id="form_st">$BODY$</div> <input name="ok" value="- Добавить -" type="button" onClick="if(sub_ok()) openery();" style="width:150px; font-weight:bold;"> Пишем скрипт для обработки: Code <script> //Удаление лишнее из основной формы document.addform.brief.parentNode.parentNode.style.display='none'; e=document.all.form_st.getElementsByTagName("TR"); e[e.length-1].style.display='none'; if(document.addform.cid) { document.all.ok.value="- Изменить -"; //Распределяем запомненное в поле Кратий текст" по нашим полям list = document.addform.brief.value.split ('|'); document.newform.pole1.value=list[0]; document.newform.pole2.value=list[1]; } function sub_ok() { document.addform.brief.value=document.newform.pole1.value+'|'+document.newform.pole2.value; return true; } Здесь предоставлена сама идея создания дополнительных полей. Без знаний джаваскрипта писать его безсмысленно.
|