Maison > interface Web > js tutoriel > le corps du texte

Analyse de la liaison d'entrée de formulaire et des bases des composants dans Vue

不言
Libérer: 2018-07-17 16:50:28
original
1111 Les gens l'ont consulté

Cet article partage avec vous une analyse de la liaison d'entrée de formulaire et des bases des composants dans Vue. Les amis dans le besoin peuvent s'y référer.

Objectif :

  1. Maîtriser avec compétence le traitement des formulaires dans vue

  2. Une brève revue de ce que vous avez appris auparavant, et Ecrivez un exemple et appliquez ce que vous avez appris (il est préférable de laisser le document)

La méthode de traitement du formulaire en vue

  1. La méthode de traitement du formulaire dans vue est utilisée avec l'instruction v-model, cette instruction peut directement lier une donnée aux attributs valeur, vérifiés et sélectionnés dans l'élément du formulaire. En même temps, ces attributs auront également leurs valeurs initiales. ​​ignoré, et les données de l'instance Vue seront toujours utilisées comme source de données.

  2. Après avoir utilisé v-model, l'interpolation entre <textarea></textarea> ne sera pas valide et sera être remplacé par v-model

Liaison bidirectionnelle (v-model)

1. Valeur de liaison : texte, zone de texte (chaîne)
texte :

<input v-model="message" placeholder="edit me">
Copier après la connexion
textarea :

<textarea v-model="message" placeholder="add multiple lines"></textarea>
Copier après la connexion
2. Liaison vérifiée : checkout (valeur booléenne de liaison unique, tableaux de chaînes de liaison multiples), radio (chaîne)

checkout (simple) :

<input type="checkbox" id="checkbox" v-model="checked">
Copier après la connexion
checkout (multiple) :

<input type="checkbox" id="jack" value="Jack" v-model="checkedNames">
<label for="jack">Jack</label>
<input type="checkbox" id="john" value="John" v-model="checkedNames">
<label for="john">John</label>
<input type="checkbox" id="mike" value="Mike" v-model="checkedNames">
<label for="mike">Mike</label>
Copier après la connexion
radio :

<input type="radio" id="one" value="One" v-model="picked">
<label for="one">One</label>
<br>
<input type="radio" id="two" value="Two" v-model="picked">
<label for="two">Two</label>
Copier après la connexion
Reliure sélectionnée : select(string)

<select v-model="selected">
    <option disabled value="">请选择</option>
    <option>A</option>
    <option>B</option>
    <option>C</option>
</select>
Copier après la connexion
modificateur (utilisé dans les instructions du modèle v)

.lazy : les événements déclenchés sont différents, utilisez le déclencheur de changement au lieu du déclencheur d'entrée

.number : convertir automatiquement en type numérique
.trim : filtrer automatiquement symboles d'espaces de garde

Exemple

form.html

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>表单输入绑定</title>
    <script src="https://cdn.bootcss.com/vue/2.5.17-beta.0/vue.min.js"></script>
</head>
<body>
    <p id="app">
        <form>
            <!-- 文本 -->
            <input type="text" v-model="formData.textValue">{{formData.textValue}}<br>
            <textarea v-model="formData.textareaValue"></textarea>{{formData.textareaValue}}<br>
            <!-- checkout(单个) -->
            <input type="checkbox" id="checkbox" v-model="formData.isChecked"><label for="checkbox">点我啊</label><br>
            <!-- 多个多选 -->
            <input type="checkbox" id="haha" value="haha" v-model="formData.checkedValues">
            <label for="haha">哈哈</label>
            <input type="checkbox" id="hoho" value="hoho" v-model="formData.checkedValues">
            <label for="hoho">呵呵</label>
            <input type="checkbox" id="hihi" value="hihi" v-model="formData.checkedValues">
            <label for="hihi">嘻嘻</label>
            <br>
            多选选中的是<span v-for="value of formData.checkedValues"> {{value}} </span>
            <br>
            <!-- 单选 -->
            <input type="radio" id="one" value="one" v-model="formData.pickedValue">
            <label for="one">one</label>
            <input type="radio" id="two" value="two" v-model="formData.pickedValue">
            <label for="two">two</label>
            <input type="radio" id="three" value="three" v-model="formData.pickedValue">
            <label for="three">three</label>
            <br>
            单选选中的是<span> {{formData.pickedValue}} </span>
            <br>
            <!-- 下拉选择框 -->
            <select v-model="formData.selectedValue">
                <option disabled value="">请选择</option>
                <option>A</option>
                <option>B</option>
                <option>C</option>
            </select>
            <br>
            下拉选择框选中的是<span> {{formData.selectedValue}} </span>
            <br>
            <a @click="submitForm">提交</a>
        </form>
    </p>
</p>
<script>
    var vm = new Vue({
        el: &#39;#app&#39;,
        data: {
            formData: {
                textValue: &#39;&#39;,
                textareaValue: &#39;&#39;,
                isChecked: true,
                checkedValues: [],
                pickedValue:&#39;&#39;,
                selectedValue: &#39;&#39;
            },
            msg: &#39;这是一句消息&#39;
        },
        methods: {
            submitForm: function(){
                for(var key in this.formData) {
                    obj[key] = this.formData[key];
                }
                console.log(this.formData);
                console.log(this.msg);
            }
        }
    });
</script>
</body>
</html>
Copier après la connexion
Recommandations associées :

Analyse du traitement des événements dans Vue

Analyse de la liaison de classe et de style et du rendu conditionnel et de liste dans Vue

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!