Я человек категории B и не знаю, как использовать видео для решения проблемы, поэтому мне приходится использовать сбивающие с толку слова, чтобы писать.
В обычных обстоятельствах эта ситуация полезна для вторичных каталогов. Сейчас на веб-сайтах циркулирует множество видов JS, но все они представляют собой не что иное, как те JS-коды, которые сбивают с толку таких людей, как я. . Всё сразу за... массив всё сразу.
Без дальнейших церемоний, давайте перейдем к делу.
Сначала вам нужно создать таблицу. Конечно, если каталог в вашей таблице уже создан, этот шаг можно пропустить. Но следует напомнить одно: эта таблица является основой моего примера (не знаю, правильно ли это).
Поскольку я использую таблицу ACCESS, я не буду углубляться в ее создание, а лишь перечислю соответствующие имена полей этих двух таблиц (имя базы данных: db.mdb):
Имя таблицы: type_tree — поле родительского класса: type_id (автоматический номер) type_name (имя категории)
Имя таблицы: s_type — поле подкласса: id (автоматический номер) s_name (имя подкатегории) type_id (идентификатор родительского класса) — и соответствует родительскому классу table,
соединение с базой данных теперь установлено:
Dim conn, connStrSet conn = server.CreateObject("ADODB.Connection")connStr = "Provider = Microsoft.jet.oledb.4.0;"connStr = connStr & "Data Source = " & server .mappath("db.mdb")Conn.Open connStr
Нет необходимости объяснять приведенные выше коды, все они являются широко используемыми кодами. .
Теперь о самом деле :)
Вторичные контекстные меню обычно состоят из раскрывающихся меню, и я здесь не исключение, и для их создания я также использую раскрывающиеся меню.
Но есть одна вещь, которая здесь отличается.
Использование меню перехода. Это очень важно. Успех полностью зависит от того, правильно ли используется меню!
Ниже приведен код этого меню перехода!
<select name="first" onChange="MM_jumpMenu('parent',this,0)">
<%
sql = "выберите [type_id],[type_name] из [type_tree]"
set rs = conn.execute(sql)'Получите идентификатор и имя родительского класса
если rs.eof или rs.bof, то
response.write "<option>-----</option>" 'Если записи нет, отобразить -----
еще
while not(rs.eof или rs.bof) 'Если запись существует, укажите родительское имя, чтобы сформировать раскрывающийся список.
response.write("<option value='?sec=" & rs(0) & "'")
если cstr(rs(0)) = request.querystring("sec") тогда
response.write "выбрано"
конец, если
response.write (">" & rs(1) & "</option>")
rs.movenext
идти
rs.movefirst 'Перемещает курсор к первому элементу для дальнейшего использования.
конец, если
%>
</выбрать>
Да, кстати, есть еще кусок кода, который я забыл выложить. Это ключ к переходу в меню. Посмотрите на мою невнимательность!
Добавить, чтобы добавить:
<script Language="JavaScript" type="text/JavaScript">
<!--
функция MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
если (восстановить) selObj.selectedIndex=0;
}
//-->
</скрипт>
Приведенный выше код вставлен в <head> и генерируется DW. Я не совсем понимаю, что это значит, поэтому не буду его комментировать :D.
Теперь это второстепенная часть меню. Это не меню перехода, это просто список, поэтому единственная разница между кодом и меню перехода выше — это функция onchange.
Ниже приведен код этого меню. Поскольку цикл и решение более сложны, чем приведенные выше, каждый должен его прочитать.
<select name="второй">
<%if rs.eof или rs.bof тогда
response.write("<option>--------</option>")
еще
if request.querystring("sec") = "" then 'Получить значение секунды после перехода
temp=rs(0) Если он пуст, установите значение temp равным значению первой записи.
еще
temp = request.querystring("sec") 'Иначе это будет полученное значение
конец, если
subsql = "выберите [s_name] из [s_type], где type_id=""&temp&"'"
set subrs = conn.execute(subsql) 'Вывести список всех записей, чьи данные являются временными
если subrs.eof или subrs.bof, то
response.write("<option>-----</option>")
'Если записи нет, отобразить "-----" в этом списке
еще
while not(subrs.eof или subrs.bof)' В противном случае используйте цикл для вывода списка всех записей, соответствующих условиям.
response.write ("<option value=" & subrs(0) & ">" & subrs(0) & "</option>")
subrs.movenext
идти
конец, если
end if
'Закрыть все наборы записей
subrs.close
установить subrs = ничего
RS.закрыть
setrs=ничего
конн.закрыть
установить соединение = ничего
%>
</select>
На данный момент процесс создания этого вторичного меню завершен, как я объяснил.
Если ты не понимаешь, пожалуйста, прекрати говорить. В любом случае, я больше не знаю, что сказать.
Специалисты готовы дать вам совет.