vue.js的v-bind
v-bind
v-bind 主要用于属性绑定,
html中的标签内:
<div class="control-group">
<label class="control-label">封面图:</label> <div class="controls">
<input type="button" value="添加" onclick="BrowseServer('image',2)" />
<div id="app" class="box" style="width:100%">
<ul style="overflow:hidden;margin:10px;padding:2px;list-style:none;">
<li style="float:left;width:200px; height:200px; position:relative;" >
<input id="imgeConId" type="hidden" name="pic" v-bind:value="v_pic" />
<img v-bind:src="i_img" alt="" style="position:absolute;left:0;top:0;bottom:0;right:0;max-width:200px;max-height:200px">
</li>
</ul>
</div>
</div> </div>
js的代码:
var bannerPic='${hmlwxItinerantExhibition.bannerPic}';
var im = '${ctn}'+'${hmlwxItinerantExhibition.pic}';
var pic = '${hmlwxItinerantExhibition.pic}';
if(bannerPic && bannerPic!=''){
bannerPic=$.parseJSON(bannerPic);
}else{
bannerPic=[];
}
window.app=new Vue({
el:"body",
data:{
v_picList:bannerPic,
v_pic:pic,
i_img:im
},
watch:{
},
ready:function(){
var size = this.v_picList.length;
var newArray=[];
var c=0;
for(var i=0;i<size;i++){
var reg='^'+'${ctn}'+'\\S*';
if(this.v_picList[i].match(reg)){
newArray[c++]=this.v_picList[i];
}else{
newArray[c++]='${ctn}'+this.v_picList[i];
}
}
this.v_picList=newArray;
window.app=this;
},
methods:{
imgDbClick:function(data){
var size=window.app.v_picList.length;
var newArray=[];
var c=0;
for(var i=0;i<size;i++){
if(i!=data){
newArray[c++]=window.app.v_picList[i];
}
}
window.app.v_picList=newArray;
}
}
});
});
function BrowseServer(inputId,type){
var finder = new CKFinder() ;
finder.basePath = '${ctx}/static/ckfinder/'; //导入CKFinder的路径
if(type == 1){
finder.selectActionFunction = SetFileField; //多张
}
else if(type == 2 ){
finder.selectActionFunction = setPic; //单张
}
finder.selectActionData = inputId; //接收地址的input ID
finder.popup() ;
};
//文件选中时执行
function SetFileField(fileUrl,data)
{
window.app.v_picList.push(fileUrl);
}
//封面
function setPic(fileUrl,data){
var patt2 = new RegExp(".jpeg|.jpg|.bng|.gif","g");
if(!patt2.exec(fileUrl)){
top.$.jBox.alert("请选择图片类型数据");
return;
}
var NfileUrl = fileUrl.substring(fileUrl.indexOf('/',fileUrl.indexOf('/')+1));
window.app.v_pic=NfileUrl;
window.app.i_img=fileUrl;
}
简单例子:
<div class="control-group">
<label class="control-label">详细分类缩略图:</label>
<%-- <div class="controls">
<form:input path="classificationPic" htmlEscape="false" maxlength="100" class="input-xlarge "/>
</div> --%>
<div class="controls">
<input type="button" value="添加" onclick="BrowseServer('image')" />
<div id="app" class="box" style="width:100%">
<ul style="overflow:hidden;margin:10px;padding:2px;list-style:none;">
<li style="float:left;width:200px; height:200px; position:relative;" >
<input id="imgeConId" type="hidden" name="classificationPic" v-bind:value="classificationPic" />
<img v-bind:src="img" alt="" style="position:absolute;left:0;top:0;bottom:0;right:0;max-width:200px;max-height:200px">
</li>
</ul>
</div>
</div>
js的代码:
var s = '${ctn}'+'${hmlwxClassification.classificationPic}';
window.app = new Vue({
el: '#app',
data: {
classificationPic:s,
img:s
}
});
//文件选中时执行
function SetFileField(fileUrl,data)
{
var NfileUrl = fileUrl.substring(fileUrl.indexOf('/',fileUrl.indexOf('/')+1));
window.app.classificationPic=NfileUrl;
window.app.img=fileUrl;
}
vue.js的v-bind的更多相关文章
- Vue.js的从入门到放弃进击录(一)
感谢我们项目组给机会,让我学了Vue.js,打开新世界大门...哈哈哈,也没有那么夸张,不过学下来确实觉得入门还是蛮容易的.我大概前前后后学了有一个月的样子,一开始只是比较急着可以写东西出来,后来因为 ...
- 01.什么是Vue.js
VUE.JS 什么是Vue.js Vue.js 是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App, Vue语法也是可以用于进行手机App开发的, ...
- 02: vue.js常用指令
目录:Vue其他篇 01: vue.js安装 02: vue.js常用指令 目录: 1.1 vuejs简介 1.2 选择器:根据id.class等查找 1.3 静态绑定数据 data 1.4 插值 { ...
- .Vue.js大全
Vue起步 1.下载核心库vue.js bower info vue npm init --yes cnpm install vue --save vue2.0和1.0相比,最大的变化就是引入了Vir ...
- Vue.js - Day1
什么是Vue.js Vue.js 是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App, Vue语法也是可以用于进行手机App开发的,需要借助于We ...
- web前端开发面试题(Vue.js)
1.active-class是哪个组件的属性?嵌套路由怎么定义? 答:vue-router模块的router-link组件. 2.怎么定义vue-router的动态路由?怎么获取传过来的动态参数? ...
- Vue.js 源码分析(二十八) 高级应用 transition组件 详解
transition组件可以给任何元素和组件添加进入/离开过渡,但只能给单个组件实行过渡效果(多个元素可以用transition-group组件,下一节再讲),调用该内置组件时,可以传入如下特性: n ...
- vue.js中英文api
全局配置 Vue.config is an object containing Vue's global configurations. You can modify its properties l ...
- MVVM大比拼之vue.js源码精析
VUE 源码分析 简介 Vue 是 MVVM 框架中的新贵,如果我没记错的话作者应该毕业不久,现在在google.vue 如作者自己所说,在api设计上受到了很多来自knockout.angularj ...
- MVC、MVP、MVVM、Angular.js、Knockout.js、Backbone.js、React.js、Ember.js、Avalon.js、Vue.js 概念摘录
注:文章内容都是摘录性文字,自己阅读的一些笔记,方便日后查看. MVC MVC(Model-View-Controller),M 是指业务模型,V 是指用户界面,C 则是控制器,使用 MVC 的目的是 ...
随机推荐
- phpexcel 导出数字类型字段导出错误或者为空解决办法 (原)
跟我们写excel时候一样,手机号或者较长的数字类型,或被科学计数法和谐,但是如果类型是字符串,长一些的数字就不受影响了. 解决导出被和谐的最简单易懂的,就是最前面拼接‘ ’ 空格,或者字母符号之类, ...
- JavaWeb_(SSH论坛)_六、点赞模块
基于SSH框架的小型论坛项目 一.项目入门 传送门 二.框架整合 传送门 三.用户模块 传送门 四.页面显示 传送门 五.帖子模块 传送门 六.点赞模块 传送门 七.辅助模块 传送门 联合主键 创建p ...
- python学习之路(4)
使用list和tuple Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >& ...
- 在linux 系统下 使用命令行对mysql 数据库进行操作
1.连接mysql root@test:/home# mysql -uroot -proot <uroot是用户名,proot是密码> 2.查询所有的库 mysql> show da ...
- C++入门经典-例6.18-数组的动态分配,动态获得斐波那契数列
1:有时在获得一定的信息之前,我们并不确定数组的大小.动态分配数组则可以使用变量作为数组的大小,使数组的大小符合我们的要求. 2:科普一下斐波纳契数列:斐波那契数列指的是这样一个数列 1, 1, 2, ...
- 第十四周学习总结&课程实验报告
课程总结 一.相关概念 1.什么是JDBC JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统 ...
- 1.2.1 Maven到底是什么鬼
解释之前,提1个小问题. 1.1.假如你正在Eclipse下开发两个Java项目,姑且把它们称为A.B,其中A项目中的一些功能依赖于B项目中的某些类,那么如何维系这种依赖关系的呢? 很简单,这不就是跟 ...
- Electron对JQuery的支持问题
最近在了解Electron框架写应用,偶然发现在html中使用<script src="./jquery.js"></script>这种方式引入JQuery ...
- FileChannel原理
官方对Channel的解释 (一个用于输入/输出操作的连接.通道表示对实体的开放连接,如硬件设备.文件.网络套接字或能够执行一个或多个不同的输入/输出操作的程序组件,例如读取或写入.) Thankin ...
- line-height 与 height 的区别
line-height是行高的意思,它决定了元素中文本内容的高度,height则是定义元素自身的高度. height:表示 行高 line-height:表示 每行文字所占的高度 举例: 第 ...