javascript - VueJs2 checkbox v-bind:true-value is not working - Stack Overflow

I have created a vuejs2 app using vue-cli. I'm trying to bind dynamic value for checkbox as vuejs

I have created a vuejs2 app using vue-cli. I'm trying to bind dynamic value for checkbox as vuejs documentation said: value binding. But its giving me undefined. If I don't bind vlaue its giving me true or false. This is my ValueBinding.vue ponent.

<template>
    <div id="input">
        <p> Selected value for smoking: {{ smoking }} </p>
        <input v-model="smoking" v-bind:true-value="Y" v-bind:false-value="N" type="checkbox">
        <label>No Smoking</label>
        <br>
        <button @click="submit">Submit</button>
    </div>
</template>
<script>
    export default {
        name: 'value-binding',
        data() {
            return {
                smoking: ''
            }
        },
        methods: {
            submit() {
                console.log(this.smoking) //shows undefined
            }
        }
    }
</script>

I'm new to vuejs. Thanks in advance.

I have created a vuejs2 app using vue-cli. I'm trying to bind dynamic value for checkbox as vuejs documentation said: value binding. But its giving me undefined. If I don't bind vlaue its giving me true or false. This is my ValueBinding.vue ponent.

<template>
    <div id="input">
        <p> Selected value for smoking: {{ smoking }} </p>
        <input v-model="smoking" v-bind:true-value="Y" v-bind:false-value="N" type="checkbox">
        <label>No Smoking</label>
        <br>
        <button @click="submit">Submit</button>
    </div>
</template>
<script>
    export default {
        name: 'value-binding',
        data() {
            return {
                smoking: ''
            }
        },
        methods: {
            submit() {
                console.log(this.smoking) //shows undefined
            }
        }
    }
</script>

I'm new to vuejs. Thanks in advance.

Share Improve this question edited Jul 14, 2022 at 2:39 tony19 139k23 gold badges278 silver badges348 bronze badges asked Dec 10, 2016 at 14:53 hasib32hasib32 8351 gold badge14 silver badges32 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 3

When you use v-bind, it dynamically bind one or more attributes to an expression. In your case when you do

v-bind:true-value="Y"

It will try to find a data attribute: Y in vue instance, as you have not defined any such attribute, it will bee undefined.

If you just want to true-value as "Y" and false-value as "N", do follwing:

<input v-model="smoking" true-value="Y" false-value="N" type="checkbox">

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745409571a4626467.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信