Menu linkage (transfer)

xiaoxiao2021-03-06  77

With the rapid development of network technology, more and more e-commerce websites also come to life. And in building a powerful e-commerce website often provides online registration function to register this module itself, in order to fill in the information as much as possible, we often use the drop-down box for customer selection, especially two-level linkage. Most common.

Bes, I found that I found 9CBS forum today, I have regularly ask this question, that is, I need a two-level link to pull the box, the first display the name of the province, the second display corresponding city name. In order to understand this question, I have specially write this article, I hope to help users who need this information.

First, let's design the database first (SQL Server 7.0)

● Database name: DB_PROVINCAT

● Table name: 1) TB_PROVINCE 2) TB_CITY

Description: Table TB_Province is used to store the provincial name; Table TB_CITY is used to store the corresponding city name.

● Field name design

1) Table TB_Province's field has a provincial ID number (province code), province name (provincename), Table 1 shows:

ProvincialCatid Provincecode Provincename

1 01 Beijing

2 02 Shanghai

3 03 Tianjin City

4 04 Chongqing City

5 05 Guangdong Province

6 06 Zhejiang Province

7 07 Fujian Province

8 08 Hainan Province

9 09 Jiangsu Province

Table 1

2) Table TB_CITY field has a city ID (CityID), citycode, city name, Table 2 shows an example:

CityId Citycode CityName

1 01001 Beijing

2 02001 Shanghai

3 03001 Tianjin City

4 04001 Chongqing City

5 05001 Guangzhou

6 05002 Shenzhen City

7 05003 Zhuhai City

8 05004 Maoming City

9 05005 Zhongshan City

10 06001 Hangzhou

11 06002 Wenzhou City

12 07001 Fuzhou City

13 07002 Xiamen City

14 08001 Haikou City

15 08002 Sanya City

16 08003 Wanning City

17 08004 Five Guishan City

18 09001 Nanjing

19 09002 Table 2, Suzhou

Description: One thing to note here is that the identity code should correspond to the heads of the city code.

Second, write code. Here is a complete source code:

Twolevel.asp

drop-down column representation example </ title></p> <p></ hEAD></p> <p><%</p> <p>DIM Conn</p> <p>DIM ConnStr</p> <p>ON Error ResMe next</p> <p>Set conn = server.createObject ("adoDb.connection")</p> <p>Connstr = "driver = {SQL Server}; server = wen; uid = sa; pwd =; database = db_provincecat"</p> <p>Conn.open connStr</p> <p>SET RS = Server.createObject ("AdoDb.Recordset")</p> <p>Rs.cursorlocation = aduseclient</p> <p>SQL = "SELECT * from TB_PROVINCE"</p> <p>RS.Open SQL, CONN, 1, 1</p> <p>IF not r.</p> <p>DIM STRJSCRIPT</p> <p>Strjscript = "" "</p> <p>Response.write ("<script language = javaScript>) & chr (13)</p> <p>Response.write ("Function SetCategory (S) {") & chr (13)</p> <p>Response.write ("S.category.Length =" CSTR (Rs.Recordcount 1) ";") & chr (13)</p> <p>DIM I</p> <p>i = 0</p> <p>While Not Rs.eof</p> <p>Strjscript = strjscript "scategory.Options [" CSTR (i) "]. Value =" CHR (34) TRIM (RS ("provincecode") chr (34) ";" CHR ( 13)</p> <p>Strjscript = strjscript "S.category.Options [" CSTR (i) "]. TEXT =" CHR (34) TRIM (RS ("Provincename")) CHR (34) "; CHR ( 13)</p> <p>i = i 1</p> <p>Rs.movenext</p> <p>Wend</p> <p>Response.write (STRJScript)</p> <p>Response.write ("S.Category.Options [" CSTR (i) "]. Value =" CHR (34) "None" CHR (34) "; CHR (13)) Response. Write ("S.Category.Options [" CSTR (i) "]. Text =" chr (34) "** Please select the province **" CHR (34) "; CHR (13 ))</p> <p>Response.write ("S.category.Options [" CSTR (i) "]. SELECTED = true;" CHR (13))</p> <p>Response.write ("}") & chr (13)</p> <p>Rs.close</p> <p>SET RS = Nothing</p> <p>END IF</p> <p>SET RS = Server.createObject ("AdoDb.Recordset")</p> <p>Rs.cursorlocation = aduseclient</p> <p>SQL = "Select Num = Count (*), Tb_Province.ProvinceCode From Tb_Province, Tb_City where Tb_Province.ProvinceCode = substring (Tb_City.CityCode, 1,2) group by Tb_Province.ProvinceCode order by Tb_Province.ProvinceCode"</p> <p>RS.Open SQL, CONN, 1, 1</p> <p>IF not r.</p> <p>DIM NUM (30), J</p> <p>J = 0</p> <p>Do While Not Rs.eof</p> <p>Num (j) = rs ("NUM")</p> <p>J = J 1</p> <p>Rs.movenext</p> <p>Loop</p> <p>END IF</p> <p>Rs.close</p> <p>SET RS = Nothing</p> <p>SQL = ""</p> <p>SET RS = Server.createObject ("AdoDb.Recordset")</p> <p>Rs.cursorlocation = aduseclient</p> <p>SQL = "SELECT TB_PROVINCE. *, TB_CITY. * From TB_PROVINCE, TB_CITY WHERE TB_PROVINCE.PROVINCECODE = Substring (TB_CITY.CITYCODE, 1, 2) Order by TB_Province.ProvinceCode"</p> <p>RS.Open SQL, CONN, 1, 1</p> <p>J = 0</p> <p>IF not r.</p> <p>Response.write ("Function SetSmall_cat (D) {") & chr (13)</p> <p>Response.write ("VAR valuecategory = D.category.Options [D.category.SelectedIndIndex] .value;") & chr (13)</p> <p>Response.write ("Valuecategory.indexof (" CHR (34) "None" CHR (34) ") == 0) {" CHR (13) & _</p> <p>"D.SMALL_CAT.LENGTH = 1;" & _</p> <p>"D.SMALL_CAT.Options [0] .Value =" CHR (34) "None" CHR (34) ";" CHR (13) & _ "D.SMALL_CAT.Options [0] .Text =" CHR (34) "** Please select the city **" CHR (34) CHR (13) & _</p> <p>"D.SMALL_CAT.Options [0] .Selected = true;" CHR (13) & _</p> <p>"}")</p> <p>i = 0</p> <p>Dim nextlevel, Upcatcode, Overflow</p> <p>NextLevel = "n"</p> <p>Overflow = "n"</p> <p>Strjscript = "" "</p> <p>Do While Not Rs.eof</p> <p>Upcatecode = trim (RS ("provincecode"))</p> <p>if nextlevel = "n" THEN</p> <p>Strjscript = "Else IF (Valuecategory.indexOf (" CHR (34) Upcatecode Chr (34) ") == 0) {" CHR (13)</p> <p>Strjscript = strjscript "d.small_cat.length =" CSTR (Num (j)) ";" CHR (13)</p> <p>J = J 1</p> <p>NextLevel = "y"</p> <p>END IF</p> <p>Strjscript = strjscript "d.small_cat.Options [" CSTR (i) "]. Value =" CHR (34) TRIM ("Citycode") CHR (34) "; CHR ( 13)</p> <p>Strjscript = strjscript "d.small_cat.Options [" CSTR (i) "]. TEXT =" CHR (34) TRIM (RS ("CityName") CHR (34) ";" CHR ( 13)</p> <p>i = i 1</p> <p>Rs.movenext</p> <p>IF Upcatecode <> TRIM (RS ("provincecode")).</p> <p>Overflow = "y"</p> <p>END IF</p> <p>if overflow = "y" then</p> <p>Response.write (Strjscript "})</p> <p>Strjscript = "" "</p> <p>Overflow = "n"</p> <p>NextLevel = "n"</p> <p>i = 0</p> <p>END IF</p> <p>Loop</p> <p>Response.write ("} </ script>") & chr (13)</p> <p>Rs.close</p> <p>SET RS = Nothing</p> <p>END IF</p> <p>Conn.close</p> <p>Set conn = Nothing</p> <p>%></p> <p><body οnlοad = setcategory (Document.select); setsmall_cat (document.select)></p> <p><Form name = "SELECT" method = "post" action = "#"> <center></p> <p><Table></p> <p><TR> <TD> Please select: </ TD></p> <p><TD> <select οNCHANGE = setsmall_cat (document.select) Name = category size = "1"> </ select> <select name = small_cat size = "1"> </ select> </ td></p> <p></ TR></p> <p></ Table> </ center></p> <p></ Form></p> <p></ body></p> <p></ html></p> <p>Third, perform code debugging.</p> <p>This program is debugged in the Win2000 Iis SQL Server7.0 environment.</p></div><div class="text-center mt-3 text-grey"> 转载请注明原文地址:https://www.9cbs.com/read-93002.html</div><div class="plugin d-flex justify-content-center mt-3"></div><hr><div class="row"><div class="col-lg-12 text-muted mt-2"><i class="icon-tags mr-2"></i><span class="badge border border-secondary mr-2"><h2 class="h6 mb-0 small"><a class="text-secondary" href="tag-2.html">9cbs</a></h2></span></div></div></div></div><div class="card card-postlist border-white shadow"><div class="card-body"><div class="card-title"><div class="d-flex justify-content-between"><div><b>New Post</b>(<span class="posts">0</span>) </div><div></div></div></div><ul class="postlist list-unstyled"> </ul></div></div><div class="d-none threadlist"><input type="checkbox" name="modtid" value="93002" checked /></div></div></div></div></div><footer class="text-muted small bg-dark py-4 mt-3" id="footer"><div class="container"><div class="row"><div class="col">CopyRight © 2020 All Rights Reserved </div><div class="col text-right">Processed: <b>0.047</b>, SQL: <b>9</b></div></div></div></footer><script src="./lang/en-us/lang.js?2.2.0"></script><script src="view/js/jquery.min.js?2.2.0"></script><script src="view/js/popper.min.js?2.2.0"></script><script src="view/js/bootstrap.min.js?2.2.0"></script><script src="view/js/xiuno.js?2.2.0"></script><script src="view/js/bootstrap-plugin.js?2.2.0"></script><script src="view/js/async.min.js?2.2.0"></script><script src="view/js/form.js?2.2.0"></script><script> var debug = DEBUG = 0; var url_rewrite_on = 1; var url_path = './'; var forumarr = {"1":"Tech"}; var fid = 1; var uid = 0; var gid = 0; xn.options.water_image_url = 'view/img/water-small.png'; </script><script src="view/js/wellcms.js?2.2.0"></script><a class="scroll-to-top rounded" href="javascript:void(0);"><i class="icon-angle-up"></i></a><a class="scroll-to-bottom rounded" href="javascript:void(0);" style="display: inline;"><i class="icon-angle-down"></i></a></body></html><script> var forum_url = 'list-1.html'; var safe_token = 'xutoZKnFqHISUn82BYnP15PX6BYwMewCmrRLw4gSCg4KbwIHCzd5_2FSZ6PahQm9Jd9BVz15rjW1Mx4GWfmm7Ugg_3D_3D'; var body = $('body'); body.on('submit', '#form', function() { var jthis = $(this); var jsubmit = jthis.find('#submit'); jthis.reset(); jsubmit.button('loading'); var postdata = jthis.serializeObject(); $.xpost(jthis.attr('action'), postdata, function(code, message) { if(code == 0) { location.reload(); } else { $.alert(message); jsubmit.button('reset'); } }); return false; }); function resize_image() { var jmessagelist = $('div.message'); var first_width = jmessagelist.width(); jmessagelist.each(function() { var jdiv = $(this); var maxwidth = jdiv.attr('isfirst') ? first_width : jdiv.width(); var jmessage_width = Math.min(jdiv.width(), maxwidth); jdiv.find('img, embed, iframe, video').each(function() { var jimg = $(this); var img_width = this.org_width; var img_height = this.org_height; if(!img_width) { var img_width = jimg.attr('width'); var img_height = jimg.attr('height'); this.org_width = img_width; this.org_height = img_height; } if(img_width > jmessage_width) { if(this.tagName == 'IMG') { jimg.width(jmessage_width); jimg.css('height', 'auto'); jimg.css('cursor', 'pointer'); jimg.on('click', function() { }); } else { jimg.width(jmessage_width); var height = (img_height / img_width) * jimg.width(); jimg.height(height); } } }); }); } function resize_table() { $('div.message').each(function() { var jdiv = $(this); jdiv.find('table').addClass('table').wrap('<div class="table-responsive"></div>'); }); } $(function() { resize_image(); resize_table(); $(window).on('resize', resize_image); }); var jmessage = $('#message'); jmessage.on('focus', function() {if(jmessage.t) { clearTimeout(jmessage.t); jmessage.t = null; } jmessage.css('height', '6rem'); }); jmessage.on('blur', function() {jmessage.t = setTimeout(function() { jmessage.css('height', '2.5rem');}, 1000); }); $('#nav li[data-active="fid-1"]').addClass('active'); </script>