二级联动:

首先在数据处理层写对应语句,

   #region 分类
public List<GTYpe> GTYpe(int id)
{
return db.GTYpe.Where(p => p.GPId == id).ToList();
}
#endregion

对应的在控制器进行调用之后

在vue里写对应的参数和方法:

 data() {
return { brands: [], //品牌
classifys:[] //分类
}
}
methods: {
//加载分类
getBrand() {
axios.get('/Info/GTYpe?id=0').then(res => {
this.brands = res.data;
this.brands.unshift({ "GTId": "0", "GTName": "请选择" });
});
},
//加载品牌
getClassify() {
//this.proData.GTId>0 代表 点击的不是请选择
if (this.proData.GTId>0) {
axios.get('/Info/GTYpe?id=' + this.proData.GTId).then(res => {
this.classifys = res.data;
this.classifys.unshift({ "GTId": "0", "GTName": "请选择" });
this.proData.GPId = 0; //将品牌 变成 请选择状态
});
}
this.classifys = [];
},

在挂载函数中调用第一级下拉

 created: function () {
this.getBrand()
}

在表单里写对应的v_model  v-for  循环输出

 <tr>
<td>商品分类:</td>
<td>
分类:
<select v-model="proData.GTId" v-on:change="getClassify">
<option v-for="(item,index) in brands" :value="item.GTId">{{item.GTName}}</option>
</select>
品牌:
<select v-model="proData.GPId">
<option v-for="(item,index) in classifys" :value="item.GTId">{{item.GTName}}</option>
</select>
</td>
</tr>

vue的图片上传:

首先在控制器里写一个图片上传的方法:

  [HttpPost]
public ActionResult UpLoad()
{
var file = Request.Files[0];
var imgdir = Server.MapPath("/Images/");
//if (!Directory.Exists(imgdir))
//{
// Directory.CreateDirectory(imgdir);
//}
file.SaveAs(imgdir + file.FileName);
return Json(new { code=1,fileName=file.FileName}, JsonRequestBehavior.DenyGet); }

在添加页面里,写对应的vue的方法:

  //文件上传
[HttpPost]
public ActionResult UpLoad()
{
try
{
//一、获取前台传过来的文件
var file = Request.Files[0];
//将虚拟路径转成物理路径
var imgDir = Server.MapPath("/Images/"); //判断你要存储的文件夹是否存在,不存在创建
//需要引用System.IO
if (!Directory.Exists(imgDir))
{
//创建文件夹
Directory.CreateDirectory(imgDir);
}
//保存
file.SaveAs(imgDir + file.FileName);
return Json(new {code = 1,fileName = file.FileName,msg="" }, JsonRequestBehavior.DenyGet);
}
catch (Exception ex)
{
return Json(new { code = 0, fileName = "", msg =ex.Message },JsonRequestBehavior.DenyGet);
}
}

在vue里写对应的方法用来上传和接收

  //上传图片
upLoad(event) {
//获取图片
let file = event.target.files[0];
//配置头部类型
//let config = {
// headers: {
// 'Context-Type':"multipart/form-data"
// }
//} let fd = new FormData();
fd.append("file", file); axios.post('/Info/UpLoad', fd).then(res => {
if (res.data.code > 0) {
this.proData.ImgUrl = res.data.fileName;
alert('上传成功')
} else {
alert(res.data.msg)
}
}) },

在表单里修改对应的数据

<tr>
<td>商品图:</td>
<td><input type="file" value="" v-on:change="upLoad" /></td>
</tr>

Vue添加--图片 二级联动的更多相关文章

  1. vue添加图片

    首先开始创建一个 static 文件夹用来保存图片 去 setting 里面进行配置 MEDIA_ROOT = os.path.join(BASE_DIR,'media') #前面大写的是死格式,尽量 ...

  2. vue 添加一个二级目录

    原先的: http://xxx.xx.xxx.xxx:xxx/#/ 现在的: http://xxx.xx.xxx.xxx:xxx/guangfu/#/

  3. vue实现二级联动效果

    你如城市与省份间的二级联动效果 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&g ...

  4. 周记4——vue中动态添加图片无效、build上线后background-image路径问题

    又是一个周五,又一周要过去了...很开心,这周遇到了vue中的一个比较常见的坑,网上随便一搜就有了很多解决方案...“幸运”的是,我选了一个带坑的方案...所以我觉得有必要记录一下这个“坑中坑”... ...

  5. iview+vue 表格中添加图片

    开门见山,话不多说,要在表格中添加图片,可以使用td: <table " width="100%"> <tr class="tr-style ...

  6. android中利用实现二级联动的效果

    按照惯例,首先上一张效果图. 本篇文章实现的效果就是如图中所圈的那样,实现类似于HTML中的二级联动的效果. 对于第一个选项我们读取的是本地xml文件来填充数据的, 对于第二个选项我们读取的是通过中央 ...

  7. JavaScript日历控件开发 C# 读取 appconfig文件配置数据库连接字符串,和配置文件 List<T>.ForEach 调用异步方法的意外 ef 增加或者更新的习惯思维 asp.net core导入excel 一个二级联动

    JavaScript日历控件开发   概述 在开篇之前,先附上日历的代码地址和演示地址,代码是本文要分析的代码,演示效果是本文要实现的效果代码地址:https://github.com/aspwebc ...

  8. JQuery的使用案例(二级联动,隔行换色,轮播图,广告插入)

    JQuery的使用案例 (一)利用JQuery完成省市二级联动 第一步:确定事件(change事件),在绑定的函数里面获取用户选择的省份 第二步:创建二维数组来存储省份和城市 第三步:遍历二维数组中的 ...

  9. iOS开发之"省市"二级联动的数据组织(PHP版)以及PickerView的实现与封装

    之所以要发表这篇博客,还源于最近的开发工作所实现的一个小的Demo, 当然这个Demo不会涉及工作中App的一些内容,下方要实现的Demo是通用的.因为项目需求的迭代,要求在银行卡绑定中添加支行所在的 ...

  10. 利用JavaScript来实现省份—市县的二级联动

    所谓省-市二级联动是指当选择省份下拉选择框时,市县的下拉框会根据选择的省市而有相应的市县加载出来,如下图所示选择"上海市",城市的下拉选择框只会出现上海的市县: 这种二级联动非常常 ...

随机推荐

  1. 使用Promethues和Grafana监控Flink

    之前使用Influxdb储存Metrics经常会出现数据写不进去的问题,当Influxdb重启之后又能写进去,遂将数据存储部分换成Promethues,因为Flink采用PutGateway的方式,需 ...

  2. [SQL Server]储存过程中使用临时表循环操作数据

    本文为原创文章,转载请注明出处!我的博客地址:http://www.cnblogs.com/txwd 由于工作原因,到目前为此已有一年多没有写SQL Server的储存过程了,已有些生疏.日前工作中有 ...

  3. 路飞项目day01 软件开发流程、PIP永久换源、虚拟环境、路飞项目开始

    一.软件开发流程(重要) ​ 我们作为一个后端,虽然一般情况下只专注自己的那一部分事情,但是有时候小公司,人员架构没那么细化,或者老板就是想省钱少招点人,我们就得大致熟悉软件开发流程,知道上司.其他同 ...

  4. uniapp(1)

    **在项目根目录中新建.gitignore忽略文件,并配置如下: 忽略 node_modules /node_modules /unpackage/dist** 添加页面 新建页面,而后选择scss模 ...

  5. 《Makefile中DEP_LIBRARIES变量的作用》

    1.例子 DEP_LIBRARIES := lib@InfoSDK_api lib@WMTMedia lib@WMTUtil lib@curl 该变量是Makefile里面内置的变量,作用是指定依赖的 ...

  6. linux 的防火墙 ufw、firwalld、iptables 、

    防火墙综述 linux 防火墙,常用的包括三种:ufw . firewalld 和 iptables.学习难度依次递增. ufw 因为原生的 iptable 配置麻烦,学习成本较高. ufw全称 Un ...

  7. mysql索引相关知识

    一.什么情况下会使索引失效? 二.sql优化您们是怎么做的? 1.首先开启数据库慢查询日志,定位到查询效率比较低的sql , 找出对应的sql语句并进行分析 1.表设计是否规范,是否符合三范式的标准( ...

  8. java使用MVC编程模型实现1+到100图形界面

    MVC概念 MVC编程模型是可以说从提出到现在经久不败,是一种先进的设计结构.能很好的体现个人分工,从而实现前后端分离. M(Model):模型:存储数据的对象.后端操作数据库的. V(View):视 ...

  9. 从零搭建hadoop集群之克隆虚拟机

    1. 选中一台已关闭的虚拟机,在虚拟机名称上,右键点击,选择"管理",再选择"克隆", 出现如下画面: 2. 点击"下一步",出现如下画面: ...

  10. 一、mysql基础

    说明:学习视频参考尚硅谷--康师傅 第一章.数据库概述 1.为什么使用数据库?why? 持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用.大多数情况下,特别是企业级应用,数 ...