vue父组件获取子组件单多个输入框(input)的值

简介: vue父组件获取子组件单多个输入框(input)的值

1.子组件-单个输入框

<template>
  <div>
  <input type="text" class="form-control" id="inputEmail3" placeholder="test" v-on:input="input_name($event.target.value)">
  </div>
</template>
<script>
export default {
    props:['count'],
    methods:{
        input_name(e) {
            this.$emit("input", e);
        }
    }
}
</script>

1-1 父组件获取子组件值

 <test-type  v-model="result"></test-type>
  <button type="button" class="btn btn-primary" @click="test">提交</button>
<script>
import testType from '@/components/TestType.vue'
export default {
    components:{testType},
    data:function(){
        return{
            result:""
        }
    },
    methods:{
        test:function(){
            console.log(this.result)
        }
    }
}
</script>

2.子组件-多个输入框

  <template>
    <div class="form-group">
            <div class="col-sm-6">
                <label for="inputEmail3" class="col-sm-2 control-label" >题型{{count}}</label>
                <input type="text" class="form-control" id="inputEmail3" placeholder="题型名称" v-on:input="input_name($event.target.value)">
            </div>
            <div class="col-sm-3">
                <label for="inputEmail3" class="col-sm-6 control-label">题目数</label>
                <input type="text" class="form-control" id="inputEmail3" placeholder="题目数" v-on:input="input_count($event.target.value)">
            </div>
            <div class="col-sm-3">
                <label for="inputEmail3" class="col-sm-6 control-label">总分数</label>
                <input type="text" class="form-control" id="inputEmail3" placeholder="总分" v-on:input="input_number($event.target.value)">
            </div>
    </div>
</template>
<script>
export default {
    props:['count'],
    data:function(){
       return{
           reslut:{}
       }
    },
    methods:{
        input_name(e) {
            this.reslut.name = e;
        },
        input_count(e) {
           this.reslut.count = e;
        },
        input_number(e) {
          this.reslut.number = e;
          console.log(this.reslut);
         this.$emit("input", this.reslut);
        }
    }
}
</script>

2-1 父组件获取子组件的值

 <form class="form-horizontal" ref="result">
            <test-type  v-model="result"></test-type>
   </form>
   <button type="button" class="btn btn-primary" @click="test">提交</button>
<script>
import testType from '@/components/TestType.vue'
export default {
    components:{testType},
    data:function(){
        return{
            result:{}
        }
    },
    methods:{
        test:function(){
            console.log(this.result)
        }
    }
}
</script>


相关文章
|
3天前
|
JavaScript 前端开发
【vue】iview如何把input输入框和点击输入框之后的边框去掉
【vue】iview如何把input输入框和点击输入框之后的边框去掉
10 0
|
2天前
|
监控 JavaScript
Vue中的数据变化监控与响应——深入理解Watchers
Vue中的数据变化监控与响应——深入理解Watchers
|
2天前
|
JavaScript 安全 前端开发
Vue 项目中的权限管理:让页面也学会说“你无权访问!
Vue 项目中的权限管理:让页面也学会说“你无权访问!
11 3
|
2天前
|
JavaScript 前端开发 开发者
Vue的神奇解锁:冒险的开始
Vue的神奇解锁:冒险的开始
5 1
|
4天前
|
资源调度 JavaScript 前端开发
Vue的路由管理:VueRouter的配置和使用
【4月更文挑战第24天】VueRouter是Vue.js的官方路由管理器,用于在单页面应用中管理URL路径与组件的映射。通过安装并引入VueRouter,设置路由规则和创建router实例,可以实现不同路径下显示不同组件。主要组件包括:`&lt;router-link&gt;`用于创建导航链接,`&lt;router-view&gt;`负责渲染当前路由对应的组件。此外,VueRouter还支持编程式导航和各种高级特性,如嵌套路由、路由参数和守卫,以应对复杂路由场景。
|
3天前
|
JavaScript
【vue实战】父子组件互相传值
【vue实战】父子组件互相传值
9 1
|
3天前
|
JavaScript
vue2_引入Ant design vue
vue2_引入Ant design vue
8 0
|
3天前
|
JavaScript
vue知识点
vue知识点
13 4
|
4天前
|
存储 JavaScript 前端开发
【Vue】绝了!这生命周期流程真...
【Vue】绝了!这生命周期流程真...
|
4天前
|
JavaScript 索引
【vue】框架搭建
【vue】框架搭建
7 1