Код может быть оптимизирован, пожалуйста, оптимизируйте в соответствии с вашими потребностями
иллюстрировать:
Поэтому сначала храните все показания классификации в массиве JS (это может быть немного хлопотно, если объем данных большой)
При выборе верните родительский идентификатор классификации и найдите соответствующую классификацию из массива, а затем отобразите его пользователю
Дизайн базы данных (вы можете добавить поля в соответствии с вашими собственными потребностями, какую категорию принадлежит эта категория и т. Д.)
Описание типа поля
ID автоматический номер записи номера
Классификация текста CotEname
BID Number Parent Classification ID (то есть для этого идентификатора таблицы значение корневого контакта равно 0)
Часть кода JS (название *.asp)
Кода -копия выглядит следующим образом:
<%Dimconn
SetConn = server.createObject ("adodb.connection")
conn.connectionString = "Provider = microsoft.jet.oledb.4.0;" & _
"DataSource =" & server.mappath ("cote.mdb")
conn.open
%>
functionchecklm (thevalue) {
varbyid = newarray ();
varcotename = newarray ();
variable = newarray ();
vari;
variable_s;
varbyid_s;
varcotename_s;
VARTHEVALUE_R;
vardata = '<selectname = "lm" onchange = "checklm (this.value)">'
id_s = "|";
cotename_s = '-select- |';
<%setrs = server.createObject ("adodb.recordset")
sql = "select*from [db_cote] orderbybyid, id"
Rs.opensql, Conn, 1,1
i = 0
ifnotrs.eofthen
Dowhilenotrs.eof
response.write ("id [" & i & "] =" & rs ("id") & ";" & chr (10))
response.write ("byid [" & i & "] =" & rs ("byid") & ";" & chr (10))
response.write ("cotename [" & i & "] = '" & rs ("cotename") & ";" & chr (10))
Rs.movenext
i = i+1
петля
еще
response.write ("id [0] = 0; byid [0] = 0; cotename [0] = 'Нет классификации';")
эндиф
Rs.close
setrs = ничего%>
if (thevalue == null || thevalue == undefined || thevalue == '') {thevalue = 0;}
// if (lmvalue == null || lmvalue == не определено || lmvalue == '') {lmvalue = 0;}
for (k = 0; k <id.length; k ++) {