Bootstrap select下拉联动(jQuery cxselect)

下拉select选项多级联动实例。

cxselect插件使用方法:

1. 引入JS,
<script src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.min.js"></script> 
<script src="js/jquery.cxselect.min.js"></script>

2. JS项设置。Find more here:http://code.ciaoca.com/jquery/cxselect/

<script>$('#cnMap').cxSelect({
 url: 'js/cityData.min.json',
 //url: 'js/cityData.min.json',
 selects: ['province', 'city', 'region'],
 nodata: 'none'
}); 

$('#globalMap').cxSelect({
 url: 'js/globalData.min.json',
 selects: ['country', 'state', 'city', 'region'],
 nodata: 'none'
});
</script> 

实例源码:

<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge">
 <meta name="viewport" content="width=device-width, initial-scale=1">
 <!--
 <link href="favicon.ico" rel="shortcut icon" type="image/x-icon" />
 <link href="favicon.ico" rel="Bookmark" type="image/x-icon" />
 -->
 <meta name="Generator" content="EditPlus®">
 <meta name="Author" content="">
 <meta name="Keywords" content="">
 <meta name="Description" content="">
 <!-- HTML5 Shim 和 Respond.js 用于让 IE8 支持 HTML5元素和媒体查询 -->
 <!-- 注意: 如果通过 file:// 引入 Respond.js 文件,则该文件无法起效果 -->
 <!--[if lt IE 9]>
 <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
 <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
 <![endif]-->
 <title>UnionSelect</title>
 <link href="http://apps.bdimg.com/libs/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet" />
</head>
<body>
<h1 align="center">下拉联动</h1>
<div id="" class="container">
 <form method="post" action="" class="form-horizontal" role="form"> 

 <div class="form-group" id="cnMap">
 <label for="firstname" class="col-sm-3 control-label">全国<small> (省、市、县三级;包括提交表单的验证。)</small></label>
 <div class="col-sm-3">
 <select name="province" class="province form-control" disabled="disabled" data-first-title="选择省份"></select>
 </div>
 <div class="col-sm-3">
 <select name="city" class="city form-control" disabled="disabled"></select>
 </div>
 <div class="col-sm-3">
 <select name="region" class="region form-control" disabled="disabled"></select>
 </div>
 </div> 

 <hr /> 

 <div class="form-group" id="globalMap">
 <label for="firstname" class="col-sm-4 control-label">全球<small> (国、省、市、县三级;未做表单验证。)</small></label>
 <div class="col-sm-2">
 <select name="country" class="country form-control" disabled="disabled" data-first-title="选择国家"></select>
 </div>
 <div class="col-sm-2">
 <select name="state" class="state form-control" disabled="disabled"></select>
 </div>
 <div class="col-sm-2">
 <select name="city" class="city form-control" disabled="disabled"></select>
 </div>
 <div class="col-sm-2">
 <select name="region" class="region form-control" disabled="disabled"></select>
 </div>
 </div> 

<!--
 <h2>全国</h2>
 <div id="cnMap">
 <select name="province" class="province" disabled="disabled" data-first-title="选择省份"></select>
 <select name="city" class="city" disabled="disabled"></select>
 <select name="region" class="region" disabled="disabled"></select>
 </div> 

 <h2>全球</h2>
 <div id="globalMap">
 <select name="country" class="country" disabled="disabled" data-first-title="选择国家"></select>
 <select name="state" class="state" disabled="disabled"></select>
 <select name="city" class="city" disabled="disabled"></select>
 <select name="region" class="region" disabled="disabled"></select>
 </div>
-->
 <br />
 <button id="subBut" type="submit" class="btn btn-default">提交</button>
 </form>
<?php
if($_POST){
 echo "<br /><pre>";
 print_r($_POST);
}
?>
</div>
<script src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="js/jquery.cxselect.min.js"></script>
<script>
$('#cnMap').cxSelect({
 url: 'js/cityData.min.json',
 //url: 'js/cityData.min.json',
 selects: ['province', 'city', 'region'],
 nodata: 'none'
}); 

$('#globalMap').cxSelect({
 url: 'js/globalData.min.json',
 selects: ['country', 'state', 'city', 'region'],
 nodata: 'none'
}); 

//表单验证start
$("#subBut").click(function(){
 if (!$("#cnMap .province").val() && !$("#cnMap .province").attr('disabled'))
 {
 alert('请选择省份 :)');
 $("#cnMap .province").focus();
 return false;
 } else if (!$("#cnMap .city").val() && !$("#cnMap .city").attr('disabled')) {
 alert('请选择市 :)');
 $("#cnMap .city").focus();
 return false;
 } else if (!$("#cnMap .region").val() && !$("#cnMap .region").attr('disabled')) {
 alert('请选择县区 :)');
 $("#cnMap .region").focus();
 return false;
 } else {
 return true;
 }
});
//表单验证end
</script>
</body>
</html>

必须的JS文件:jquery.cxselect.js 或 jquery.cxselect.min.js(压缩版)
必须的JSON文件:cityData.min.json(全国的城市列表) 和 globalData.min.json(全世界的城市列表)
这些都可以从这里下载:https://github.com/ciaoca/cxSelect

如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:

Bootstrap学习教程

Bootstrap实战教程

Bootstrap Table使用教程

Bootstrap插件使用教程

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 基于Bootstrap里面的Button dropdown打造自定义select

    最近工作非常的忙,在对一个系统进行改版.项目后台是MVC1.0开发的,但是前端部分已经改过几个版本,而已之前的设计师很强大,又做设计又做前端开发.而已很时尚和前沿,使用了一直都很热门的Bootstrap工具包,有很多把它定义为Web前端CSS框架.说实话,之前只知道它是Twitter公司出品,界面做的比较好看.但是没有在实际项目中使用,之前公司新来的同事会这个,准备在公司官网项目中使用,因为我不会,而已Leader对这个也不感冒,所以就没有用.而已她说配合Less一起做项目,可以提高开发效率,而

  • BootStrap中关于Select下拉框选择触发事件及扩展

    Select下拉框的问题,想在选择一个选项后,前台显示做出变动,并且知道选择的是第几个选项. 这个很好解决: 如下: <div class="page-header"> <div class="form-horizontal"> <div class="control-label col-lg-0"> </div> <div class="col-lg-2"> <

  • 轻松使用jQuery双向select控件Bootstrap Dual Listbox

    本文主要为大家介绍了双向select控件Bootstrap Dual Listbox的使用方法,Bootstrap Dual列表是一个为响应Twitter优化的列表框插件,它可以用在所有的现代浏览器和触摸设备上,分享给大家,具体如下: 效果图: 一.使用 1.引用css和js文件 <link href="scripts/bootstrap-3.3.5-dist/css/bootstrap.min.css" rel="stylesheet" /> <

  • 基于BootStrap Metronic开发框架经验小结【三】下拉列表Select2插件的使用

    在上篇基于BootStrap Metronic开发框架经验小结[二]列表分页处理和插件JSTree的使用,介绍了数据的分页处理,使用了Bootstrap Paginator插件,另外对树形列表,采用了JSTree插件,本篇继续介绍在编辑页面中常用到的控件Select2,这个控件可以更加丰富传统的Select下拉列表控件,提供更多的功能和更好的用户体验. 1.Select2控件介绍 这个插件是基于Select的扩展插件,能够提供更加丰富的功能和用户体验,它的github官网地址为:https://

  • JS组件中bootstrap multiselect两大组件较量

    两个这种组件,大体样式和功能基本相同,本文就来带领大家看看这两个组件的用法. 一.组件说明以及API 1.第一个组件--multiple-select.这个组件风格简单.文档全.功能强大.但是觉得它选中的效果不太好.关于它的效果展示,我们放在后面. 2.第二个组件--bootstrap-multiselect.这个组件风格和第一个非常相似,文档也挺全面. 二.Multiple-select组件 1.组件说明 这个组件需要的浏览器支持如下: IE 7+ Chrome 8+ Firefox 10+

  • JS组件Bootstrap Select2使用方法详解

    在介绍select组件的时候,之前分享过一篇JS组件中bootstrap multiselect两大组件较量的文章,这两个组件的功能确实很强大,本文分享下select组件的一些用法和特性. 一些通用的单选.多选.分组等功能这里就不多做介绍了,multiselect这方面是强项.重点介绍下select2的一些特性效果: 一.特性效果 1.多选效果 可以设置最多只能选几个 2.图文结合的效果 3.远程搜索功能(即在用户输入搜索内容时动态去后台取数据) 输入内容前 输入空格搜索出全部 滚动条滑动到底部

  • JS组件Bootstrap Select2使用方法解析

    本文总结了组件Bootstrap Select2在一些实际项目中的用法,分享给大家,有需要的朋友可以借鉴一下,少走些弯路,具体内容如下 效果图: 无论是固定方式获取数据还是ajax获取都需要引入bootstrap.js/css 和 select2.js/css及: {{ stylesheet_link('css/bootstrap.css') }} {{ stylesheet_link('css/select2.min.css') }} {{ stylesheet_link('css/font-

  • Bootstrap select多选下拉框实现代码

    前言 项目中要实现多选,就想到用插件,选择了bootstrap-select. 附上官网api链接,http://silviomoreto.github.io/bootstrap-select/. 没有中文的.对付看吧.有机会每个方法实践一下,会总结的.我自己也等着呢. 需要引用的它们 <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="https://cdnjs.cl

  • BootStrap selectpicker

    mark 一下使用 bootstrap selectpicker 遇到的一个小issue,作为下次查错使用 $('.selectpicker').selectpicker('val', 'Mustard');//单选 $('.selectpicker').selectpicker('val', ['Mustard','Relish']);//多选$('.selectpicker').selectpicker('refresh'); 可以刷新显示 mark一下问题:设置的val必须为option里

  • Bootstrap框架下下拉框select搜索功能

    之前用Easyui框架下做的下拉框选择,虽然可以搜索,但是有诸多的不便:比如,不能模糊匹配,必须按照第一个字母来搜索 心血来潮,想换个框架写后台,然后用Bootstrap搭了个架子,然后两种样式冲突,百度了一把,找到了另一个牛逼的基于Bootstrap下拉框搜索功能的js 不区分大小写,模糊匹配,哈哈,太棒了~~ 具体用法: <script type="text/javascript" src="<%=basePath%>/js/commons/jquery

随机推荐