JQuery实现级联下拉框效果实例讲解_jquery

用JQuery和select来实现汽车厂商和汽车类型的联动,参考过程如下
效果图:

    

逻辑分析图:

html代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>级联下拉框效果</title>
<link rel="stylesheet" type="text/css" href="css/chainselect.css">
<script language="javascript" type="text/javascript" src="js/jquery.js"></script>
<script language="javascript" type="text/javascript" src="js/chainselect.js"></script>
</head> 

<body>
 <div class="car">
  <span class="carname">
   汽车厂商:
   <select>
    <option value="">请选择汽车厂商</option>
    <option value="BMW">宝马</option>
    <option value="Audi">奥迪</option>
    <option value="VW">大众</option>
   </select>
   <img src="images/pfeil.gif" alt="有数据"/>
  </span>
  <span class="cartype">
   汽车类型:
   <select></select>
  </span>
 </div>
</body>
</html> 

css代码:

.car {
 text-align:center;
}
.cartype{
 display:none;
} 

js代码

$(document).ready(function(){
 //找到下拉框
 var carnameSelect = $(".carname").children("select");
 var cartypeSelect = $(".cartype").children("select"); 

 //给下拉框注册事件
 carnameSelect.change(function(){
  var carnameValue = $(this).val();
  if( carnameValue != ""){
   //carnameValue不为空的情况接着判断
   if(!carnameSelect.data(carnameValue)){
    //不在缓冲区中,需要向服务器请求
    $.post("ChainSelect",{keyword:carnameValue,type:"top"},function(data){
     if (data.length != 0){
      //返回的数据不为空
      cartypeSelect.html("");
      $("<option value=''>请选择汽车类型</option>").appendTo(cartypeSelect);
      for(var i = 0;i < data.length; i++ ){
       $("<option value =' " + data[i] + " '> "+ data[i] +"</option>").appendTo(cartypeSelect);
      }
      cartypeSelect.parent().show();
      carnameSelect.next().show();
     }else{
      //返回的数据为空
      cartypeSelect.parent().hide();
      carnameSelect.next().hide();
     }
     carnameSelect.data(carnameValue,data);
    },"json");
   }else{
    //在缓冲区中
    var data = carnameSelect.data(carnameValue);
    if (data.length != 0){
      //返回的数据不为空
      cartypeSelect.html("");
      $("<option value=''>请选择汽车类型</option>").appendTo(cartypeSelect);
      for(var i = 0;i < data.length; i++ ){
       $("<option value =' " + data[i] + " '> "+ data[i] +"</option>").appendTo(cartypeSelect);
      }
      cartypeSelect.parent().show();
      carnameSelect.next().show();
     }else{
      //返回的数据为空
      cartypeSelect.parent().hide();
      carnameSelect.next().hide();
     }
   }
  }else{
   //carnameValue为空的情况,隐藏第二个下拉框
   cartypeSelect.parent().hide();
   carnameSelect.next().hide();
  }
 }); 

}); 

如果大家还想深入学习,可以点击jquery下拉框效果汇总、JavaScript下拉框效果汇总进行学习。

以上就是利用JQuery和select实现级联下拉框的小例子,希望对大家的学习有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索jquery
, select级联
, JQuery级联下拉框
, JQuery实现级联
JQuery实现下拉框
jquery级联下拉框、jquery实例讲解、bootstrap 级联下拉框、下拉框级联、ajax 下拉框 级联,以便于您获取更多的相关知识。

时间: 2025-01-07 18:53:01

JQuery实现级联下拉框效果实例讲解_jquery的相关文章

ASP.NET实现级联下拉框效果实例讲解_实用技巧

用ASP.NET控件实现部门和员工的联动,参考过程如下效果图:  Default.aspx代码: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/199

jquery无限级联下拉菜单简单实例演示_jquery

本文实例讲述了jquery无限级联下拉菜单代码以及jquery无限级联下拉菜单实现思路.分享给大家供大家参考.具体如下: 最终效果图: 因为是级联,所以数据必须是树型结构的,这里的测试数据如下: 看下效果图: 1.效果图一:   2.效果图二:   3.效果图三:     由图可知,下拉框的个数并不是写死的,而是动态加载的.每当下拉框选择改变的时候,会发送一次ajax请求,请求成功返回json格式数据,当返回的数据不为空时(即有子节点时),则会向页面中添加一个下拉框,没有则不添加. 插件的实现代

jQuery+PHP+MySQL实现无限级联下拉框效果_jquery

 本文简单实现jQuery无限级联效果,分享给大家供大家参考,具体内容如下  效果图: 图1 仅下拉框 图2 层级提示+下拉框 图3 存储数据点击响应 主要包含3个文件:index.html(主页),wuxianjilian.php(数据处理),wuxianjilian.sql(MySQL数据文件) 1. index.html <html> <head> <title>无限级联</title> <meta http-equiv="Conten

jQuery实现下拉框功能实例代码_jquery

说一百句,不如我给大家贴张效果图,效果图请看下面: <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> * { m

jquery实现多级下拉菜单的实例代码_jquery

复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>jquery实现多级下拉菜

JQuery select(下拉框)操作方法汇总_jquery

1. 获取选中项:获取选中项的Value值: 复制代码 代码如下: $('select#sel option:selected').val(); 或者 复制代码 代码如下: $('select#sel').find('option:selected').val(); 获取选中项的Text值: 复制代码 代码如下: $('select#seloption:selected').text(); 或者 复制代码 代码如下: $('select#sel').find('option:selected')

jquery级联下拉框

$(document).ready(function(){     //找到三个下拉框     var carnameSelect = $(".carname").children("select");     var cartypeSelect = $(".cartype").children("select");     var wheeltypeSelect = $(".wheeltype").chi

jquery 级联下拉框实例代码

  <!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="conten

基于jquery的无限级联下拉框js插件_jquery

灵活性方面考虑了比较多的方面,提供了几个重要的配置方便在各类环境下使用,欢迎各位童鞋使用,源码完全开放.开发这个插件的缘于前段时间维护一个4级级联下拉框被里面200行代码及复杂的结构和bug所郁闷(之所以这么多代码是因为该级联下拉框有时只出现2个或3个),想到这类的需求其实经常都能遇到,jquery里没有这样比较好的插件,索性自己开发个.源代码并不复杂,稍微复杂的地方在第二个插件使用了缓存,造成理解起来十分困难,后面会做些解释. 插件一:适合在不与服务器进行AJAX交互情况使用,需预先将所有下拉