главная -> статьи -> сетевые приложения
 
Элементы формы
  В целом работа с объектами формы не вызывает сомнений, ниже приведен фрагмент кода формирующий список выбора вида животных на основе таблицы базы (раздел Рацион www.agromaster.net/):
<select id="vid" name="vid" style = "width: 130" 
onChange="send_form(1)">
<option value = "0">Выберите
<%
dbQuery = "SELECT * FROM anim_vid"
Set  animRecset = Server.CreateObject( "ADODB.Recordset" )
Call animRecset.Open(dbQuery, dbConn)
	Call animRecset.MoveFirst()
	While Not animRecset.EOF
		If animRecset("id_vid") = tmp_vid Then
		   tmp_option = " selected"
		Else  tmp_option = ""
		End If
%>
<option value = <% =animRecset("id_vid")%> <% =tmp_option%> >
<% =animRecset("name")%>
<%
	Call animRecset.MoveNext()
	Wend
animRecset.Close()
%>
</select>
    Выражение If animRecset("id_vid") = tmp_vid Then и далее предназначено для сохранения выбора при обновлении страницы в процессе последующей работы с формой (не акцентируем каким способом сохранена переменная tmp_vid).
 
  Обратите внимание, здесь используются методы MoveFirst() и MoveNext(), но для VBScript набор методов перемещения по записям ограничен по сравнению, например, с VBA.
 
  Еще одна тонкость id="vid" name="vid" двойное именование объекта позволяет работать ASP на стороне сервера и javascript на стороне клиента.
 
  Более сложные ситуации возникают при необходимости "сборки" сущности из разных таблиц (раздел Технологические карты www.agromaster.net/, список выбора агрегата, который состоит из трактора, например, и прицепного орудия).
  В подобных случаях можно использовать вложенные циклы просмотра таблиц, хотя это очень неэффективно.

далее

   
  © 2007   Сединко А.М.
  © 2004 design by   kir
Hosted by uCoz