vue form表单绑定事件与方法

    使用v-on绑定事件  
        <button @click="hello">Hello</button><br />  
        <button @click="say('I love you')">say</button><br />  
        访问原生事件  
        <button @click="do('Nihao',$event)">do</button><br />  
          
          
        事件修饰符<br />  
        <form v-on:submit.prevent="onSubmit" action="http://www.baidu.com">  
            <a @click.stop="doThis">阻止单击事件冒泡</a>  
            <input type="submit" value="提交事件不再负载页面" />  
            <input v-on:keyup.enter="submit" type="submit" value="只有在keyup等于enter才提交">  
        </form>  
        <br /><br />  
        表单控件绑定:  
        使用V-model进行双向绑定,处理一些极端的需求,如下:  
        <span>Message is:{{message}}</span><br />  
        <input type="text" v-model="message" placeholder="Edit me" /><br /><br /><br />  
        单个多选框:逻辑值  
        <input type="checkbox" id="checkbox" v-model="checked" value="游泳"/>游泳?  
        <label for="checkbox">{{checked}}</label>  
        <br /><br /><br /><br />  
        绑定到数组:不是逻辑值,是value的值  
        <input type="checkbox" value="A" v-model="model" id="A" />  
        <label for="A">A</label>  
        <input type="checkbox" value="B" v-model="model" id="B" />  
        <label for="B">B</label>  
        <input type="checkbox" value="C" v-model="model" id="C" />  
        <label for="C">C</label><br />  
        <span>selcted:{{model | json}}</span>  
          
        单选框:<br />  
        <input type="radio" value="男" v-model="sex" /><input type="radio" value="女" v-model="sex" /><br /><span>{{sex}}</span>  
          
        下拉框:<br />  
        <select v-model="selected" multiple>  
          <option selected>A</option>  
          <option>B</option>  
          <option>C</option>  
        </select>  
        <br>  
        <span>Selected: {{ selected | json }}</span>  
          
          
        <!-- 在 "change" 而不是 "input" 事件中更新 -->  
        <input v-model="msg" lazy><span>{{msg}}</span><br /><br />  
        <input v-model="age" number><span>{{age}}</span>  
    var vm=new Vue({  
        el:'#app',  
        data:{  
            text:'Hello',  
            model:[]  
        },  
        methods:{  
            hello:function(){  
                alert(this.text+" Vue.js");  
            },  
            say:function(text){  
                alert('say'+text);  
            },  
            do:function(text,event){  
                alert(text);  
                event.preventDefault();  
            }  
        }  
    });  

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue的表单是一种方便的方式,可以轻松地收集和验证用户输入。以下是创建Vue表单的基本步骤: 1. 创建Vue实例 首先,你需要在HTML文件中创建Vue实例。你需要使用Vue构造函数来创建Vue实例,并传递一个对象作为参数,该对象包含Vue实例的选项。 2. 绑定表单数据 在Vue实例中,你需要使用data属性来绑定表单数据。这意味着你需要为每个表单控件创建一个与之对应的数据属性。你可以使用v-model指令来实现双向数据绑定。 3. 绑定表单事件 你需要在Vue实例中为表单控件绑定事件。你可以使用v-on指令来绑定事件。例如,你可以为submit事件绑定一个方法,该方法将在用户提交表单时调用。 4. 添加表单验证 你可以使用Vue自带的验证规则来验证表单输入。你可以在Vue实例中定义验证规则,并将其应用于表单控件。你可以使用v-validate指令来设置验证规则。 5. 提交表单数据 最后,你需要在Vue实例中创建一个方法来处理表单数据。在提交表单时,该方法将被调用,并将表单数据发送到服务器。 以下是一个简单的Vue表单示例: ``` <!DOCTYPE html> <html> <head> <title>Vue Form</title> <script src="https://cdn.jsdelivr.net/npm/vue"></script> </head> <body> <div id="app"> <form v-on:submit.prevent="submitForm"> <label>Username:</label> <input type="text" v-model="username" v-validate="'required'"> <span v-show="!$v.username.required">Username is required</span> <br> <label>Password:</label> <input type="password" v-model="password" v-validate="'required|min:6'"> <span v-show="!$v.password.required">Password is required</span> <span v-show="!$v.password.min">Password must be at least 6 characters long</span> <br> <button type="submit">Submit</button> </form> </div> <script> var app = new Vue({ el: '#app', data: { username: '', password: '' }, methods: { submitForm: function() { // handle form submission } }, validations: { username: { required }, password: { required, min: minLength(6) } } }) </script> </body> </html> ``` 在上面的示例中,我们创建了一个包含一个用户名字段和一个密码字段的表单。我们使用v-model指令将这些字段与Vue实例中的数据属性绑定,并使用v-validate指令设置了验证规则。 我们还为表单的submit事件绑定了一个submitForm方法,该方法将在用户提交表单时调用。最后,我们使用Vue的验证规则来验证表单输入,以确保所有必填字段都已填写,并且密码至少包含6个字符。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值