<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>收集表单</title></head><body><form action="">账户:<input type="text" name="username" > <br><br>密码:<input type="password" name="password"> <br><br><!--单选框-->性别:<div>男<input type="radio" name="sex" value="female">女<input type="radio" name="sex" value="male"></div><br><!--多选框-->爱好<div>抽烟<input type="checkbox" name="hobby" value="smoke">喝酒<input type="checkbox" name="hobby" value="drink">吃饭<input type="checkbox" name="hobby" value="eat"></div><br><!--下拉框-->所属校区<select name="school"><option value="qh">清华</option><option value="bd">北大</option><option value="sjz">河北地质大学</option></select><br><!-- 多行输入--><div>其他信息 <br><textarea name="others" id="" cols="30" rows="10"></textarea></div><input type="checkbox" name="ack">阅读并接受 <a href="http://www.baidu.com">《用户协议》</a><button> 提交</button></form></body></html>
我们该如何使用v-model来识别表单数据呢?
通过以上手段我们就可以获取到表单输入v-model
但是怎么提交呢?我们可以给表格增加一个方法
@submit.prevent=“tijiao”
使用.prevent 防止提交之后跳转
前面半段:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>收集表单</title>
</head>
<body>
<script type="text/javascript" src="https://unpkg.com/vue/dist/vue.js"></script>
<div id="app">
<form action="" @submit.prevent="tijiao">
账户:<input type="text" name="username" v-model="username" > <br><br>
密码:<input type="password" name="password" v-model="password"> <br><br>
<!--单选框-->
性别:<div>
男<input type="radio" name="sex" v-model="sex" value="female">
女<input type="radio" name="sex" v-model="sex" value="male">
</div>
<br>
<!--多选框-->
爱好
<div>
抽烟<input type="checkbox" name="hobby" value="smoke" v-model="hobby">
喝酒<input type="checkbox" name="hobby" value="drink" v-model="hobby">
吃饭<input type="checkbox" name="hobby" value="eat" v-model="hobby">
</div>
<br>
<!--下拉框-->
所属校区
<select name="school" v-model="city">
<option value="qh">清华</option>
<option value="bd">北大</option>
<option value="sjz">河北地质大学</option>
</select>
<br>
<!-- 多行输入-->
<div>
其他信息 <br>
<textarea name="others" id="" cols="30" rows="10" v-model="message"></textarea>
</div>
<input type="checkbox" name="ack" v-model="ack">阅读并接受 <a href="http://www.baidu.com">《用户协议》</a>
<button> 提交</button>
</form>
</div>
后半段:
<script type="text/javascript">
var vm = new Vue({
el:"#app",
data:{
username:'',
password:'',
sex:'',
hobby: [],
city: 'bj',
message:"我是默认值",
ack:"true",
},
methods: {
tijiao(){
console.log(JSON.stringify(this._data))
}
}
})
</script>
</body>
</html>
其实我们不应该这样用this._data
因为
有下划线,所以我们应该将data的方式改一下
改为:
