知识点:vue中动态添加div节点,点击添加,动态生成div,点击删除,删除对应的div,其中数组的长度是动态改变的,如在from表单中应用,直接在提交方法中,获得list,获取所填的元素即可

效果

核心代码说明(样式代码可自行修改,详细代码请参照源码)

<div v-for="(v,i) in list">
<div class="form-group m-form__group row" style="padding-top: 15px;padding-bottom: 15px;">
<label class="col-form-label col-lg-2 col-sm-12">联系人类型 <span
style="color: #F00">*</span>
</label>
<div class="col-lg-3">
<select class="form-control m-input--fixed"
v-model="list[i].contactType">
<option v-for="option in contacttype_arr"
v-bind:value="option.id">{{ option.typename}}
</option>
</select>
</div >
<label class="col-form-label col-lg-2 col-sm-12"> 数量<span
style="color: #F00">*</span></label>
<div class="col-lg-3">
<input type="text" v-model="list[i].number"
class="form-control m-input--fixed"
placeholder=""/>
</div>
<div class="col-lg-2">
<div data-repeater-delete="" v-on:click="deleteNode(i)" style="margin-left: 35px;"
class="btn-sm btn btn-danger m-btn m-btn--icon m-btn--pill">
<span>
<span> 删除 </span>
</span>
</div>
</div>
</div>
</div>
<div class="m-form__group form-group row">
<label class="col-lg-4 col-form-label">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label>
<div class="col-lg-4" v-on:click="addNode()">
<div data-repeater-create="" style="text-align: center"
class="btn btn btn-sm btn-brand m-btn m-btn--icon m-btn--pill m-btn--wide">
<span>
<span> 添加 </span>
</span>
</div>
</div>
</div>

<script>
new Vue({
el: '#app',
data: {
contacttype_arr:[
{id: 1, typename: '家人'},
{id: 2, typename: '朋友'},
{id: 3, typename: '同事'}
],
//联系人类型数组
list:[
{contactType: '', number: ''}
],
},
//初始化方法
mounted:function () { },
methods: { //添加标本div
addNode:function() {
this.list.push({contactType: '', number: ''});
},
//删除样本div
deleteNode:function(i) {
this.list.splice(i,1); //删除index为i,位置的数组元素
}
}
})
</script>
源码链接:https://github.com/shuaishuaihand/vuedynamicdivdemo.git

vue中动态添加div的更多相关文章

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

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

  2. Vue 中动态添加class(使用v-bind:class)

    今天在Vue中动态修改类名,元素的样式就是不改变,类名也没有加上去,里面的问题具体我还是不太清楚,有可能是因为自己不认真,把 :class= 后面的内容的格式给整错了,下面将正确的做法记录一下,便于以 ...

  3. Vue中动态添加多个class

    vue中可以通过 :class=""这样来根据一定的条件来动态添加class,但是有时候需要判断的条件比较多,需要动态添加的class也比较多,这个时候其实也很简单 先看一下示例: ...

  4. vue向数组中动态添加数据

    vue中数据更新通过v-model实现,向数组中添加数据通过push()实现,向shortcuts数组中动态添加newShortcut对象中的title和action this.shortcuts.p ...

  5. 后盾网lavarel视频项目---vue实现动态添加和删除板块

    后盾网lavarel视频项目---vue实现动态添加和删除板块 一.总结 一句话总结: 原理就是:列表时根据vue中的videos变量中的元素来遍历的,初始时videos:[{title:'',pat ...

  6. vue中动态引入图片为什么要是require, 你不知道的那些事

    相信用过vue的小伙伴,肯定被面试官问过这样一个问题:在vue中动态的引入图片为什么要使用require 有些小伙伴,可能会轻蔑一笑:呵,就这,因为动态添加src被当做静态资源处理了,没有进行编译,所 ...

  7. js动态添加Div

    利用JavaScript动态添加Div的方式有很多,在这次开发中有用到,就搜集了一下比较常用的. 一.在一个Div前添加Div <html> <body> <div id ...

  8. JavaScript 动态添加div 绑定点击事件

    1.动态添加div function cDiv(num){ var oDiv=document.createElement("div"); oDiv.className='divs ...

  9. 动态添加div及对应的js、css文件

    动态添加div及对应的js.css文件 在近期的项目开发中需要在首页中添加很多面板型的div,直接加载代码显得很繁琐,于是利用js封装一个动态添加div及其对应css文件和js文件的方法供大家参考使用 ...

随机推荐

  1. Excel ALT+小键盘的妙用

    用法就是摁住ALT不松,然后输入小键盘数字(一定要小键盘),再松开ALT就可以了 α     ALT+42689β     ALT+42690γ     ALT+42691δ     ALT+4269 ...

  2. Linux学习(四)档案与目录管理

    1. 目录与路径  1.1 相对路径与绝对路径  1.2 目录的相关操作: cd, pwd, mkdir, rmdir  1.3 关于执行文件路径的变量: $PATH2. 档案与目录管理  2.1 档 ...

  3. jQuery --- 收集表单

    第一种:常用获取对应表单的value值进行收集: 第二种:用jQuery的 serializeArray() 方法收集: <form id="change"> < ...

  4. Think PHP递归重新排序无限极子分类数组(递归无限极分类)

    Think PHP递归重新排序无限极子分类数组 // 递归重新排序无限极子分类数组 function recursive($array,$pid=0,$level=0){ $arr = array() ...

  5. Pentaho Report Designer 数据大于某值显示红色

    在细节栏中的字段的属性, 在样式的text-color,右边的表达式 输入下面表达式即可! =IF( [ALL_VALUE] > 50 ; "black" ; IF([ALL ...

  6. yii2 controller发送json数据给前端

    最近要用yii2把之前老项目重构一下,因为前端打算用vuejs,所以Yii2前端那一套就放弃了,直接给前端传json数据 控制器代码: $response = Yii::$app->respon ...

  7. D. Little Artem and Dance---cf669D(模拟)

    题目链接:http://codeforces.com/problemset/problem/669/D 给你n个数,一开始是1 2 3 4 5 6 ... n 这样的 现在有两个操作,第一个操作是所有 ...

  8. Python开发【模块】:内置模块

    内置模块 1.__import__ # import app目录下的kingadmin.py文件 for app in conf.settings.INSTALLED_APPS: __import__ ...

  9. HTML实例 - 购物商场页面

    效果图 代码 https://coding.net/u/James_Lian/p/Shopping-page/git 示例 https://coding.net/u/James_Lian/p/Shop ...

  10. Java-idea-常用技巧-转maven,解决包依赖冲突

    1.Intellij IDEA如何将普通工程转换成maven工程 项目上右键 Add Framework Support,选择maven 2.Intellij IDEA 自动生成 serialVers ...