vue复选框选中的值的问题

xiaoxiao2021-02-28  30

<p> <input type="checkbox" id="m_nh3" v-model="mFormData.bd_3" v-bind:true-value="3" v-bind::false-value="checkFalseValue"> <label for="m_nh4">不含3</label> </p> <p> <input type="checkbox" id="m_nh4" v-model="mFormData.bd_4" v-bind:true-value="4" v-bind::false-value="checkFalseValue"> <label for="m_nh4">不含4</label> </p> <p> <input type="checkbox" id="m_nh5" v-model="mFormData.bd_5" v-bind:true-value="5" v-bind::false-value="checkFalseValue"> <label for="m_nh4">不含5</label> </p> <p> <input type="checkbox" id="m_nh7" v-model="mFormData.bd_7" v-bind:true-value="7" v-bind::false-value="checkFalseValue"> <label for="m_nh7">不含7</label> </p>

最近遇到vue项目中form表单复选框的问题,拿出来分享下,

因为vue没有直接像jqury中的serialize()那样,直接获取表单数据的方法,

为了简单,使用v-model的方法与data数据中的mFormData对象相互绑定,这样在获取表单数据的时候,直接用this.mFormData就可以获取表单数据,

但是在获取checkbox的值得时候,如果不做处理,选中的时候对象中的值为true,没选中的时候值是false,

可能跟我们需要传入后台的数据不符,当然可以在传参的时候对值进行判断修改,但这无形中增加了很多麻烦,

因此,可以使用v-bind:true-value='x'、v-bind:false-value='x'的方法,直接让复选框选中的时候,对象中的值直接是我们想要的数值,

需要注意的是,经常再设置未选中的时候是个空值,如果直接v-bind:false-value=''这样对象中的值还是false,

可以在data中设置一个值为''的数据。

希望对还不熟悉的同学有所帮助。

转载请注明原文地址: https://www.6miu.com/read-2632942.html

最新回复(0)