v-mode:根据控件类型自动选取正确的方法来更新元素。html
修饰符:vue
在默认状况下, v-model 在 input 事件中同步输入框的值与数据,但你能够添加一个修饰符 lazy ,从而转变为在 change 事件中同步:app
<!-- 在 "change" 而不是 "input" 事件中更新 --> <input v-model.lazy="msg" >
若是要自动过滤用户输入的首尾空格,能够添加 trim 修饰符到 v-model 上过滤输入:ui
<input v-model.trim="msg">
若是想自动将用户的输入值转为 Number 类型(若是原值的转换结果为 NaN 则返回原值),能够添加一个修饰符 number 给 v-model 来处理输入值:google
<input v-model.number="age" type="number">
这一般颇有用,由于在 type="number" 时 HTML 中输入的值也老是会返回字符串类型。spa
<body> <div id="app" @click="aa(checkedNames)"> <p>单个复选框:</p> <input type="checkbox" id="checkbox" v-model="checked"> <label for="checkbox">{{ checked }}</label> <p>多个复选框:</p> <input type="checkbox" id="runoob" value="Runoob" v-model="checkedNames"> <label for="runoob">Runoob</label> <input type="checkbox" id="google" value="Google" v-model="checkedNames"> <label for="google">Google</label> <input type="checkbox" id="taobao" value="Taobao" v-model="checkedNames"> <label for="taobao">taobao</label> <br> <span>选择的值为: {{ checkedNames }}</span> </div> <div style="height: 20px;"></div> <div id="app_r"> <input type="radio" id="runoob" value="Runoob" v-model="picked"> <label for="runoob">Runoob</label> <br> <input type="radio" id="google" value="Google" v-model="picked"> <label for="google">Google</label> <br> <span>选中值为: {{ picked }}</span> </div> <div style="height: 20px;"></div> <div id="app_s"> <select v-model="selected_Num" name="fruit"> <option value="1">第一个</option> <option value="2">第二个</option> <option value="3">第三个</option> </select> <div id="output"> 选择的数字是: {{selected_Num}} </div> </div> <script> new Vue({ el: '#app', data: { checked: false, checkedNames: [] }, methods: { aa: function(pp) { console.log('点击=' + pp); } } }) new Vue({ el: '#app_r', data: { picked: 'Runoob' /*空 都不选;填一个,则默认选*/ } }) new Vue({ el: '#app_s', data: { selected_Num: '' } }) </script> </body>
原文 http://www.runoob.com/vue2/vue-forms.htmlcode