vue拦截表单提交

<form id="app" v-if="isReady" @submit.prevent="submit">
    <input type="text" name="name" v-model.trim.lazy="model.name" />
    <input type="number" name="num" v-model.number="model.num" />
    <input type="submit" />
</form>
<script>
    new Vue({
        el: '#app',
        data: { model: model, isReady: false },
        created: function () {
            if (this.model.id) {
                this.$http.get(url, { params: { id: this.model.id } }).then(function (res) {
                    var d = res.body.result;
                    if (d) {
                        for (var v in d) {
                            this.model[v] = d[v];
                        }
                    }
                    this.isReady = true;
                }, function () {
                    alert('error');
                });
            } else this.isReady = true;
        },
        methods: {
            submit: function () {
                this.$http.post(url, this.model).then(function (res) {
                    res = res.body;
                    alert(res.msg || '...')
                }, function (e) {

                });
                return false;
            }
        }
    });
</script>

猜你喜欢

转载自blog.csdn.net/slwsss/article/details/101216220