實現(xiàn)原理:根據(jù)大類的值,通過jQuery把值傳給后臺PHP處理,PHP通過查詢MySQl數(shù)據(jù)庫,得到相應(yīng)的小類,并返回JSON數(shù)據(jù)給前端處理。
XHTML
首先我們要建立兩個下拉選擇框,第一個是大類,第二個是小類。大類的值可以是預(yù)先寫好,也可以是從數(shù)據(jù)庫讀取。
大類: 小類:
jQuery
先寫一個函數(shù),獲取大類選擇框的值,并通過$.getJSON方法傳遞給后臺server.php,讀取后臺返回的JSON數(shù)據(jù),并通過$.each方法遍歷JSON數(shù)據(jù),將對應(yīng)的值寫入一個option字符串,最后將option追加到小類里。
注意,在遍歷JSON數(shù)據(jù)追加之前一定要先將小類里的原有的項清空。清空選項的方法有兩種,一種是上文代碼中提到,還有一種更簡單直接的方法:
然后,在頁面載入后執(zhí)行調(diào)用函數(shù):
在頁面初始的時候,下拉框是要設(shè)置選項的,所以在初始的時候就要調(diào)用getSelectVal(),而當(dāng)大類選項改變時,也調(diào)用了getSelectVal()。
PHP
include_once("connect.php"); //鏈接數(shù)據(jù)庫 $bigid = $_GET["bigname"]; if(isset($bigid)){ $q=mysql_query("select * from catalog where cid = $bigid"); while($row=mysql_fetch_array($q)){ $select[] = array("id"=>$row[id],"title"=>$row[title]); } echo json_encode($select); }
根據(jù)jQuery傳遞過來的大類的value值,構(gòu)造SQL語句查詢分類表,最終輸出JSON數(shù)據(jù)。本站在未做特別說明的情況下所使用的PHP與MySQL連接,和查詢語句等均使用原始語句方法如mysql_query等,目的就是為了讓讀者能夠直觀的知曉數(shù)據(jù)的傳輸查詢。
最后附上MYSQL表結(jié)構(gòu):
CREATE TABLE `catalog` ( `id` mediumint(6) NOT NULL auto_increment, `cid` mediumint(6) NOT NULL default '0', `title` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com