vue.js - vue+bootstrap @click=''aaa'传递到模态框是怎么传递的?
本文介绍了vue.js - vue+bootstrap @click=''aaa'传递到模态框是怎么传递的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
我的代码中有一个删除全部按钮,然后有一个@click,不清楚nowIndex是如何传递到模态框的,还是bootstrap自带的模态框有接受参数功能?:
<tr class="text-right" v-show="myData.length!=0">
<td colspan="4"><button type="button" class="btn btn-danger" data-toggle="modal" data-target="#layer" @click="nowIndex=-2">删除全部</button></td>
</tr>
然后一个模态框:
<div role="dialog" class="modal fade" id="layer" data-index="nowIndex">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" ><span>×</span></button>
<h4 class="modal-title">确认删除吗?</h4>
</div>
<div class="modal-body text-right">
<button class="btn btn-primary btn-sm" name="button" data-dismiss="modal">取消</button>
<button class="btn btn-danger btn-sm" name="button" data-dismiss="modal" @click="delMsg(nowIndex)">确认</button>
</div>
</div>
</div>
</div>
全部代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<script src="vue.js" charset="utf-8"></script>
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js" charset="utf-8"></script>
<script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
</head>
<body>
<div class="container" id="box">
<form class="" role="form">
<div class="form-group">
<label for="username">用户名:</label>
<input type="text" id="username" class="form-control" placeholder="输入用户名" v-model="username">
</div>
<div class="form-group">
<label for="age">年龄:</label>
<input type="text" id="age" class="form-control" placeholder="输入年龄" v-model="age">
</div>
<div class="form-group">
<input type="button" class="btn btn-primary" name="" value="添加" @click="add">
<input type="reset" class="btn btn-danger" value="重置">
</div>
</form>
<hr>
<table class="table table-bordered table-hover">
<caption class="h2 text-info text-center">用户信息表</caption>
<tr class="text-justify">
<th class="text-center">序号</th>
<th class="text-center">名字</th>
<th class="text-center">年龄</th>
<th class="text-center">操作</th>
</tr>
<tr class="text-center" v-for="(item,index) in myData">
<td>{{index+1}}</td>
<td>{{item.name}}</td>
<td>{{item.age}}</td>
<td>
<button class="btn btn-primary btn-sm" data-toggle="modal" data-target="#layer" @click="index">
删除
</button>
</td>
</tr>
<tr class="text-right" v-show="myData.length!=0">
<td colspan="4"><button type="button" class="btn btn-danger" data-toggle="modal" data-target="#layer" @click="nowIndex=-2">删除全部</button></td>
</tr>
<tr v-show="myData.length==0">
<td colspan="4" class="text-center text-muted">
<p>暂无数据</p>
</td>
</tr>
</table>
<!--modal -->
<div role="dialog" class="modal fade" id="layer" data-index="nowIndex">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" ><span>×</span></button>
<h4 class="modal-title">确认删除吗?</h4>
</div>
<div class="modal-body text-right">
<button class="btn btn-primary btn-sm" name="button" data-dismiss="modal">取消</button>
<button class="btn btn-danger btn-sm" name="button" data-dismiss="modal" @click="delMsg(nowIndex)">确认</button>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
window.onload=function(){
new Vue({
el:'#box',
data:{
myData:[],
username:'',
age:'',
nowIndex:-100,
},
methods:{
add:function(){
this.myData.push({
name:this.username,
age:this.age
});
this.username="";
this.age=''
},
delMsg:function(n){
if (n==-2) {
this.myData=[];
}else {
this.myData.splice(n,1);
}
}
}
})
}
</script>
</body>
</html>
这个问题已被关闭,原因:问题已解决 - 问题已解决,且对他人无借鉴意义
解决方案
这篇关于vue.js - vue+bootstrap @click=''aaa'传递到模态框是怎么传递的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文