HTML:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
<title>省市联动+对应经销商</title>
<link rel="stylesheet" type="text/css" href="css/public.css" />
<link rel="stylesheet" type="text/css" href="css/index.css" />
<!--rem.js-->
<script src="js/rem.js"></script>
<style> </style>
</head>
<body>
<div id="app" v-cloak>
<div class="box">
<div class='p1'>
<div class="city">
<div>
<select v-model="province.index" @change="changeProvince">
<option :value="item.id" v-for="(item,index) in province.data">{{item.name}}</option>
</select>
</div>
<div>
<select v-model="city.index" @change="changeCity">
<option :value="item.id" v-for="(item,index) in city.data">{{item.name}}</option>
</select>
</div>
</div>
</div>
<div class='p1'>
<div class="dealer">
<select v-model = "curDealer_id" @change="changeDealer">
<option :value="item.dealer_id" v-for="(item,index) in dealer" >{{item.name}}</option>
</select>
</div>
</div>
<div style="color:#fff;">
<p>省:{{province.index}}</p>
<p>城市:{{city.index}}</p>
<p>经销商:{{curDealer_id}}</p>
</div>
</div> </div>
</div>
<!--公用js-->
<script src="js/jquery_1.12.3_jquery.min.js"></script>
<script src="js/vue.js"></script>
<!--当前页面js-->
<script src="js/index.js"></script>
</body>
</html>

INDEX.JS

var AJAXURL = 'http://mall.faw-vw.com/';
var app = new Vue({
el: "#app",
data: {
province: {
index: 0, //省id ,默认第一个
data: [] //数据
},
city: {
index: 0, //城市id ,默认第一个
data: [] //数据
},
dealer:[],
curDealer_id:'',
}, mounted: function () {
var _this = this;
_this.getProvince();
},
methods:{
// 获取参与经销商省市,默认展示第一条数据
getProvince() {
var _this = this;
var data = [
{id: "110000", name: "北京市"},
{id: "120000", name: "天津市"},
{id: "130000", name: "河北省"},
{id: "140000", name: "山西省"},
{id: "150000", name: "内蒙古自治区"},
{id: "210000", name: "辽宁省"},
{id: "220000", name: "吉林省"},
{id: "230000", name: "黑龙江省"},
{id: "310000", name: "上海市"},
{id: "320000", name: "江苏省"},
{id: "330000", name: "浙江省"},
{id: "340000", name: "安徽省"},
{id: "350000", name: "福建省"},
{id: "360000", name: "江西省"},
{id: "370000", name: "山东省"},
{id: "410000", name: "河南省"},
{id: "420000", name: "湖北省"},
{id: "430000", name: "湖南省"},
{id: "440000", name: "广东省"},
{id: "450000", name: "广西壮族自治区"},
{id: "460000", name: "海南省"},
{id: "500000", name: "重庆市"},
{id: "510000", name: "四川省"},
{id: "520000", name: "贵州省"},
{id: "530000", name: "云南省"},
{id: "540000", name: "西藏自治区"},
{id: "610000", name: "陕西省"},
{id: "620000", name: "甘肃省"},
{id: "630000", name: "青海省"},
{id: "640000", name: "宁夏回族自治区"},
{id: "650000", name: "新疆维吾尔自治区"},
];
_this.province.data =data;
_this.province.index = data[0].id;
_this.getCity(_this.province.index);
},
getCity(provinceId) {
var _this = this;
// 返回数据格式
var data = {
children:[
{id: "230100", name: "哈尔滨市"},
{id: "230200", name: "齐齐哈尔市"},
{id: "230300", name: "鸡西市"},
{id: "230400", name: "鹤岗市"},
{id: "230500", name: "双鸭山市"},
{id: "230600", name: "大庆市"},
{id: "230700", name: "伊春市"},
{id: "230800", name: "佳木斯市"},
{id: "230900", name: "七台河市"},
{id: "231000", name: "牡丹江市"},
{id: "231100", name: "黑河市"},
{id: "231200", name: "绥化市"},
{id: "232700", name: "大兴安岭地区"},
]
}
$.ajax({
url: window.AJAXURL + "/Dealer/Index/getChildRegions",
type: 'post',
contentType: 'application/x-www-form-urlencoded',
data: {
id: provinceId,
},
success: function(res) {
_this.city.data = res.data.children;
_this.city.index = res.data.children[0].id //默认展示
_this.getDealer();
}
});
},
getDealer() {
var _this = this;
// 返回数据格式
var data = {
vehicles:[
{name: "山西志国星赛车发展有限公司",dealer_id: "224"},
{name: "山西志国星赛车发展有限公司",dealer_id: "224"},
]
}
$.ajax({
url: window.AJAXURL + "/Dealer/NewCar/oneOfNewCarList",
type: 'post',
contentType: 'application/x-www-form-urlencoded',
data: {
vehicle_id:184,
city_id: _this.city.index,
sort_field:1,
no_page:1,
},
success: function(res) {
var vehicles = res.data.vehicles;
_this.dealer = vehicles;
if(vehicles.length>0){
_this.curDealer_id = vehicles[0].dealer_id;
}
}
});
},
changeProvince(){
this.getCity(this.province.index)
},
changeCity(){
this.getDealer()
},
changeDealer(e){
var _this = this;
var hh = app.dealer.filter(function(c,i,a){
if(c.dealer_id==_this.curDealer_id){
return c
}
})
console.log(_this.curDealer_id,1)
console.log(hh,2)
_this.curDealer_id = hh[0].dealer_id //获取当前option的id值
console.log('当前id:'+_this.curDealer_id)
}, }, })

CSS:

.box{background:#330000;width:300px;height:300px;margin:20px auto;padding:30px}
.p1 .city{display:flex;margin-left:2%}
.p1{border-bottom:1px solid rgba(255,255,255,0.5);width:100%;margin-bottom:5%}
.p1 .city > div{width:55%;margin-right:7%;display:flex;align-items:center;justify-content:space-between;background:url(../images/arrow_Down.png) no-repeat 100% center}
.p1 .city > div:last-child{margin-right:0}
.p1 select{height:27px;font-size:14px;color:#fff;border:none;background-color:transparent;padding-bottom:5px;overflow:hidden;white-space:nowrap;width:100%;text-overflow:ellipsis}
.p1 .dealer{border-bottom:1px solid rgba(255,255,255,0.5);position:relative;width:100%;background:url(../images/arrow_Down.png) no-repeat 100% center}
.p1 select option{color:#000}

select省市联动+对应经销商、自定义箭头的更多相关文章

  1. select省市联动选择城市 asp.net mvc4

    本文在 http://www.cnblogs.com/darrenji/p/3606703.html(感谢博主的分享)基础上加入全国各省市,从文件中读取全国省市县,组成省市联动的选择标签 在Model ...

  2. select自定义箭头问题 。。。和一行内不同颜色的整体鼠标滑过变色

    1.select自定义箭头问题 用<select><option></option></select>的时候自带的三角箭头与需要的三角不同,这是还要求有 ...

  3. Json 基于jQuery+JSON的省市联动效果

    helloweba.com 作者:月光光 时间:2012-09-12 21:57 标签: jQuery  JSON  Ajax  省市联动     省市区联动下拉效果在WEB中应用非常广泛,尤其在一些 ...

  4. jquery省市联动,根据公司需求而写

    //author:guan //2015-05-25 //省市联动 //实用说明,页面引用如下js //<script src="../js/jquery-1.6.3.min.js&q ...

  5. AJAX案例四:省市联动

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...

  6. Dynamic CRM 2013学习笔记(八)过滤查找控件 (类似省市联动)

    我们经常要实现类似省市联动一样的功能,常见的就是二个查找控件,一个选择了省后,另一个市的查找控件就自动过滤了,只显示当前省下的市,而不是所有的市.当然这是最简单的,实际工作中还有更复杂的功能要通过过滤 ...

  7. [JS]以下是JS省市联动菜单代码

    以下是JS省市联动菜单代码: 代码一: <html> <head> <title></title> <script language=" ...

  8. Ado.Net小练习03(省市联动)

    前台界面:          后台代码: namespace _04省市联动 {     public partial class Form1 : Form     {         public ...

  9. Ajax省市联动

    以JQuery为JS,写的Ajax省市联动. 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...

  10. html + ashx 实现Ajax省市联动

    基本思路:1.了解数据库中省和市的表结构及关联主键 2.创建html页面及select标签 3.通过ajax向ashx(一般处理程序)发送后台请求完成联动效果 表结构: 这里,开始创建一个命为demo ...

随机推荐

  1. 一文教会你如何在内网搭建一套属于自己小组的在线 API 文档?

    Hello,大家好,我是阿粉,对接文档是每个开发人员不可避免都要写的,友好的文档可以大大的提升工作效率. 阿粉最近将项目的文档基于 Gitbook 和 Gitlab 的 Webhook 功能的在内网部 ...

  2. hexo-gitalk-评论自动初始化

    第一步 申请Personal Access Token 从 Github 的 Personal access tokens 页面,点击 Generate new token 第二步 安装项目依赖 np ...

  3. pycharm 2021.2.1专业版破解

    1.网址:https://gitee.com/pengzhile/ide-eval-resetter 2.点击下载.下载后直接丢进pycharm中. 3.勾选.重启 .查看

  4. C++面向对象程序设计期末复习笔记[吉林大学](结合历年题速成85)

    1.头文件 头文件的作用就是被其他的.cpp包含进去的.它们本身并不参与编译,但实际上,它们的内容却在多个.cpp文件中得到了编译.根据"定义只能一次"原则我们知道,头文件中不能放 ...

  5. 为什么总是应该考虑给定 List 的初始大小

    在 .Net 技术中,使用 List<> 来存储数据是很常见的.List<> 是一个可以动态增长的泛型集合类型,可以存储任何类型的数据. 但是,在实际使用中,很多人并不注意给定 ...

  6. Mattermost 笔记

    目录 部署 配置 客户端 桌面程序 Android 使用 扩展 Jenkins Hubot 机器人 Jira GitHub Mattermost 是一个开源.可私有化部署的在线通讯平台,可以和Gith ...

  7. Octave/Matlab初步学习

    Octave/Matlab初步学习 1.基本运算 和其他语言一样,可以通过数学运算符号来实现数学公式的运算.逻辑运算也基本相同 要注意的是,≠这个符号,表达式为 1 ~= 2 而不是用!=来表达 ​ ...

  8. JavaScript:七大基础数据类型:大整数bigint

    因为数值number有表示范围,所以当我们需要精确表示更大的数字时,我们需要用到大整数bigint: 事实上,大整数可以精确表示任意长度的整数: 我们可以通过在整数的末尾添加字母n,来声明它是一个大整 ...

  9. 用Dockerfile制作一个java应用镜像,ubuntu基础篇

    内容介绍: (1) 本章目的,将一个自行开发的java程序webpay-api,制作为docker自定义镜像,并且进行部署. (2) 实验环境: 物理机:VMware 虚拟机 + CentOS 7.8 ...

  10. Flutter异常监控 - 壹 | 从Zone说起

    开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第3天,点击查看活动详情 如果你正需要处理Flutter异常捕获,那么恭喜你,找对地了,这里从根源上给你准备了Flutter异常捕获 ...