Vue添加--图片 二级联动
二级联动:
首先在数据处理层写对应语句,
#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添加--图片 二级联动的更多相关文章
- vue添加图片
首先开始创建一个 static 文件夹用来保存图片 去 setting 里面进行配置 MEDIA_ROOT = os.path.join(BASE_DIR,'media') #前面大写的是死格式,尽量 ...
- vue 添加一个二级目录
原先的: http://xxx.xx.xxx.xxx:xxx/#/ 现在的: http://xxx.xx.xxx.xxx:xxx/guangfu/#/
- vue实现二级联动效果
你如城市与省份间的二级联动效果 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&g ...
- 周记4——vue中动态添加图片无效、build上线后background-image路径问题
又是一个周五,又一周要过去了...很开心,这周遇到了vue中的一个比较常见的坑,网上随便一搜就有了很多解决方案...“幸运”的是,我选了一个带坑的方案...所以我觉得有必要记录一下这个“坑中坑”... ...
- iview+vue 表格中添加图片
开门见山,话不多说,要在表格中添加图片,可以使用td: <table " width="100%"> <tr class="tr-style ...
- android中利用实现二级联动的效果
按照惯例,首先上一张效果图. 本篇文章实现的效果就是如图中所圈的那样,实现类似于HTML中的二级联动的效果. 对于第一个选项我们读取的是本地xml文件来填充数据的, 对于第二个选项我们读取的是通过中央 ...
- JavaScript日历控件开发 C# 读取 appconfig文件配置数据库连接字符串,和配置文件 List<T>.ForEach 调用异步方法的意外 ef 增加或者更新的习惯思维 asp.net core导入excel 一个二级联动
JavaScript日历控件开发 概述 在开篇之前,先附上日历的代码地址和演示地址,代码是本文要分析的代码,演示效果是本文要实现的效果代码地址:https://github.com/aspwebc ...
- JQuery的使用案例(二级联动,隔行换色,轮播图,广告插入)
JQuery的使用案例 (一)利用JQuery完成省市二级联动 第一步:确定事件(change事件),在绑定的函数里面获取用户选择的省份 第二步:创建二维数组来存储省份和城市 第三步:遍历二维数组中的 ...
- iOS开发之"省市"二级联动的数据组织(PHP版)以及PickerView的实现与封装
之所以要发表这篇博客,还源于最近的开发工作所实现的一个小的Demo, 当然这个Demo不会涉及工作中App的一些内容,下方要实现的Demo是通用的.因为项目需求的迭代,要求在银行卡绑定中添加支行所在的 ...
- 利用JavaScript来实现省份—市县的二级联动
所谓省-市二级联动是指当选择省份下拉选择框时,市县的下拉框会根据选择的省市而有相应的市县加载出来,如下图所示选择"上海市",城市的下拉选择框只会出现上海的市县: 这种二级联动非常常 ...
随机推荐
- .net core layui折叠表格的应用。
效果展示 头部的折叠,展开,搜索按钮 <div class="layui-fluid"> <div style="margin-top: 20px;&q ...
- [iOS] 随手记录 IDFA 的一些相关内容
IDFA IDFA,广告标识符,类似于这一台设备的唯一性标识符,一般提供给第三方去做一些广告的关联. 但如果用户完全 重置系统,或者 "还原位置与隐私" 这个广告标示符会重新生成 ...
- HIVE- lag函数和lead函数
select date_flag,category_flag,field,LAG(filed, 1) OVER (PARTITION BY category_flag ORDER BY date_fl ...
- Java集合-练习巩固
练习一 public class H1_Test { public static void main(String[] args) { H1_News h1News = new H1_News(&qu ...
- [菜鸡随笔-2]用mv代替rm安全地进行删除操作的小技巧
牢骚和背景介绍: rm -rf /*的梗 相信大家都听过笑过,我不止听过笑过,还不小心试过(不要熬夜写东西!).为此丢了我一周的心血,和40块钱(买u盘跑网吧下载引导文件).所幸,这只是在自己的机器上 ...
- java心形打印999
心形打印999 农历七月初七,七夕节也就是中国民间版的所谓情人节,利用java打印心型999个图案可以让程序员更浪漫一些.现在下面由小编简要的说一下如何做到.首先下面是打印心形但却不是999个的代码, ...
- Zabbix源码安装与yum安装
一.源码安装方式:zabbix-server LAMP环境准备: #groupadd zabbix#useradd -g zabbix zabbix 1.安装依赖包: #yum install gcc ...
- IaaS--云虚拟机(二)(何恺铎《深入浅出云计算》笔记整理)
[如何挑选合适的虚拟机型号] 1.根据类型.云厂商会提供均衡型.计算密集型.内存优化型.图形计算型等常见的虚拟机类型.这些类型对应着硬件资源的某种合理配比或针对性强化,方便你在面向不同场景时,选择最合 ...
- 浅谈组件二封-vue
目录 组件二封不是换一种写法 组件二封应当具备哪些条件 我认为的二封应当有哪些作用 二封的好处 先来一个列表页demo来看看效果(Vue2) 本文仅仅针对vue系列做探讨, 项目倾向于大量增删改查的后 ...
- ubuntu 16.04升级到18.04 出现apt-get问题解决
0.背景 编译webrtc安卓版时要升级系统,升级到18.04之后,安装安卓环境时出现以下问题(./build/install-build-deps.sh): libasan2-armhf-cross ...