国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > AJAX > 正文

Ajax+php實現商品分類三級聯動

2024-09-01 08:27:45
字體:
來源:轉載
供稿:網友

當頁面加載時,利用ajax異步向后臺請求數據,加載一級商品類別,當選擇一級商品時加載二級商品,選擇二級商品加載三級商品。 

實現:
1、當拿到數據后加載pid為0的商品,并動態創建option將商品追加到一級菜單中,并設置value值
2、當選擇一級商品時加載pid=當前id的商品,并創建option將商品追加到二級菜單中,并設置value值
3、當選擇二級商品時加載pid=當前id的商品,并創建option將商品追加到三級菜單中,并設置value值 

頁面效果: 

$(function(){  //請求路徑  var url="03goods.php";  //option默認內容  var option="<option value='0'>未選擇</option>";  //獲取jq對象  var $sel1=$(".sel1");  var $sel2=$(".sel2");  var $sel3=$(".sel3");  //自動生成一個<option>元素  function createOption(value,text){  var $option=$("<option></option>");  $option.attr("value",value);  $option.text(text);  return $option;  }  //加載數據  function ajaxSelect($select,id){  //get請求  $.get(url,{"pid":id},function(data){   $select.html(option);   for(var k in data ){   $select.append(createOption(data[k].id,data[k].name));   }  },"json");  }  //自動加載第一個下拉菜單  ajaxSelect($sel1,"0");  //選擇第一個下拉菜單時加載第二個  $sel1.change(function(){  var id=$sel1.val();  if(id=="0"){   $sel2.html(option);   $sel3.html(option);  }else{   ajaxSelect($sel2,id);  }  });  //選擇第二個下拉菜單時加載第三個  $sel2.change(function(){  var $id=$sel2.val();  if($id=="0"){   $sel3.html(option);  }else{   ajaxSelect($sel3,$id);  }  }); });

后臺代碼: 

<?php header('Content-Type:text/html; charset=utf-8'); //數據 $arr=array( //array(分類id,分類名,分類的父id) array('id'=>'1','name'=>'數碼產品','pid'=>'0'), array('id'=>'2','name'=>'家電','pid'=>'0'), array('id'=>'3','name'=>'書籍','pid'=>'0'), array('id'=>'4','name'=>'服裝','pid'=>'0'), array('id'=>'5','name'=>'手機','pid'=>'1'), array('id'=>'6','name'=>'筆記本','pid'=>'1'), array('id'=>'7','name'=>'平板電腦','pid'=>'1'), array('id'=>'8','name'=>'智能手機','pid'=>'5'), array('id'=>'9','name'=>'功能機','pid'=>'5'), array('id'=>'10','name'=>'電視機','pid'=>'2'), array('id'=>'11','name'=>'電冰箱','pid'=>'2'), array('id'=>'12','name'=>'智能電視','pid'=>'10'), array('id'=>'13','name'=>'編程書籍','pid'=>'3'), array('id'=>'14','name'=>'JavaScript','pid'=>'13'), ); //獲取指定分類的商品 function getByPid($arr,$pid){ $result=array(); foreach($arr as $v){  if($v['pid']==$pid){  $result[]=$v;  } } return $result; } //獲取請求參數 $pid=isset($_GET['pid'])?$_GET['pid']:'0'; $result=getByPid($arr,$pid); //輸出json數據 echo json_encode($result);?>            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 繁昌县| 南城县| 丰城市| 德钦县| 丰镇市| 黔南| 景谷| 阳山县| 万荣县| 平果县| 东光县| 博白县| 宾川县| 忻城县| 邹平县| 田东县| 新乐市| 新源县| 亚东县| 平阳县| 舞钢市| 英超| 自贡市| 高淳县| 大关县| 安义县| 乳源| 濉溪县| 无为县| 龙州县| 吉木萨尔县| 嵊泗县| 于都县| 靖宇县| 湖口县| 札达县| 克什克腾旗| 固原市| 慈溪市| 潮安县| 禄丰县|