>  기사  >  웹 프론트엔드  >  ajax를 사용하여 3단계 연결 기능 선택 구현

ajax를 사용하여 3단계 연결 기능 선택 구현

php中世界最好的语言
php中世界最好的语言원래의
2018-03-30 15:26:291971검색

이번에는 선택 3단계 연결 기능을 구현하기 위해 ajax를 사용할 때의 주의사항을 알려드리겠습니다. 몇 가지 실제 사례를 함께 살펴보겠습니다.

이 기사는 ajax 기술을 사용하여 데이터베이스에서 데이터를 가져오고 select의 3단계 연결을 동적으로 구현합니다.

프론트 엔드 js 코드는 다음과 같습니다.

<script type="text/javascript" src="jquery/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$.ajax({
type:"get",
dataType:"text",
url:"GetItemAction?itemlevel=1",
 success:function(data){
 // 由JSON字符串转换为JSON对象
  var objJSON=eval("("+data+")");
 var len=objJSON.itemInfo.length; 
 var objSelect=document.getElementById("firstlevel");
 for(var i=0;i<len;i++){
 var op=new Option(objJSON.itemInfo[i].itemname,objJSON.itemInfo[i].itemcode);
 objSelect.add(op);
 } 
 },
error: function (XMLHttpRequest, textStatus, errorThrown) { 
   alert(errorThrown); 
  }
});
});
//显示二级分类
function firstlevel_Click(){
var objfirst=document.getElementById("firstlevel");
var index=objfirst.selectedIndex; //选中索引 
var itemcode=objfirst.options[index].value; //选中值
if(itemcode==0){
alert("请选择事件类别");
return;
}
// 删除二级分类保留第一个
var objsecond=document.getElementById("secondlevel");
for(var i=objsecond.options.length-1;i>0;i--){
objsecond.options.remove(i);
}
// 删除三级分类保留第一个
var objthird=document.getElementById("thirdlevel");
for(var i=objthird.options.length-1;i>0;i--){
objthird.options.remove(i);
}
$.ajax({
type:"get",
dataType:"text",
url:"GetItemAction?itemlevel=2&itemcode="+itemcode,
 success:function(data){
 // 由JSON字符串转换为JSON对象
  var objJSON=eval("("+data+")");
 var len=objJSON.itemInfo.length;
 var objSelect=document.getElementById("secondlevel");
 for(var i=0;i<len;i++){
 var op=new Option(objJSON.itemInfo[i].itemname,objJSON.itemInfo[i].itemcode);
 objSelect.add(op);
 } 
 },
error: function (XMLHttpRequest, textStatus, errorThrown) { 
   alert(errorThrown); 
  }
});
}
//显示三级分类
function secondlevel_Click(){
var objsecond=document.getElementById("secondlevel");
var index=objsecond.selectedIndex; //选中索引 
var itemcode=objsecond.options[index].value; //选中值
if(itemcode==0){
alert("请选择事件类别");
return;
}
// 删除三级分类保留第一个
var objthird=document.getElementById("thirdlevel");
for(var i=objthird.options.length-1;i>0;i--){
objthird.options.remove(i);
}
$.ajax({
type:"get",
dataType:"text",
url:"GetItemAction?itemlevel=3&itemcode="+itemcode,
 success:function(data){
 // 由JSON字符串转换为JSON对象
  var objJSON=eval("("+data+")");
 var len=objJSON.itemInfo.length;
 var objSelect=document.getElementById("thirdlevel");
 for(var i=0;i<len;i++){
 var op=new Option(objJSON.itemInfo[i].itemname,objJSON.itemInfo[i].itemcode);
 objSelect.add(op);
 } 
 },
error: function (XMLHttpRequest, textStatus, errorThrown) { 
   alert(errorThrown); 
  }
});
}

일부 html 코드

<table class="table-exposure">
 <tr>
 <td height="40">
 <select id="firstlevel" onchange="firstlevel_Click()" style="width:99%;font-size:1em;">
 <option value="0">请选择事件大类</option>
 </select>     
 </td>
 </tr>
 <tr>
 <td height="40">
 <select id="secondlevel" onchange="secondlevel_Click()" style="width:99%;font-size:1em;">
 <option value="0">请选择事件小类</option>
 </select>
 </td>
 </tr>
 <tr>
 <td height="40">
 <select id="thirdlevel" style="width:99%;font-size:1em;">
 <option value="0">请选择事件类别</option>
 </select>
 </td>
 </tr>
 </table>

이 기사의 사례를 읽으신 후 마스터하셨으리라 믿습니다. 더 흥미로운 방법을 알고 싶다면 PHP 중국어 웹사이트의 다른 관련 기사를 주목해 보세요!

추천 자료:

ajax(코드 포함)를 사용하여 WeChat 웹 페이지 인증 로그인을 구현하는 단계

ID 카드 및 은행 카드 번호 형식을 결정하는 일반 규칙을 작성하는 방법

위 내용은 ajax를 사용하여 3단계 연결 기능 선택 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.