Home  >  Article  >  Web Front-end  >  vue loses focus check

vue loses focus check

WBOY
WBOYOriginal
2023-05-27 17:18:101026browse

Vue.js is a popular JavaScript framework that is widely used to develop single-page applications and dynamic web applications. It is simple, flexible, and efficient. In the development of Vue.js applications, it is often necessary to implement the focus loss check function to ensure the correctness of user input data. This article will introduce how Vue.js implements the lost focus inspection function.

Vue.js form validation

Vue.js provides many form validation functions, which can easily verify input data. Vue.js form validation can be implemented in the following ways:

  1. Attribute binding: Use the v-bind directive to bind attribute values, and verify input values ​​by specifying attribute values.
  2. Listener: Use the listener to monitor changes in input values ​​and display error prompts.
  3. Custom instructions: Allow developers to customize instructions to verify input values.

Lost focus inspection implementation

How to implement the lost focus inspection function in Vue.js? The implementation process is as follows:

The first step is to define the validation rules in the input box component:

<template>
  <div>
    <label for="name">姓名:</label>
    <input type="text" name="name" id="name" v-model="name" v-on:blur="checkName" />
    <span v-show="nameError" style="color: red;">请输入正确的姓名</span>
  </div>
</template>

<script>
  export default {
    data() {
      return {
        name: '',
        nameError: false
      }
    },
    methods: {
      checkName() {
        var reg = /^[u4e00-u9fa5]{2,4}$/;
        if (!reg.test(this.name)) {
          this.nameError = true;
        } else {
          this.nameError = false;
        }
      }
    }
  }
</script>

The second step is to write a global mixin to share the validation method globally:

Vue.mixin({
  methods: {
    checkValidate() {
      const refs = this.$refs;
      for (const ref in this.$refs) {
        if (refs.hasOwnProperty(ref)) {
          const element = refs[ref][0];
          if (element && element.required) {
            element.validate();
          }
        }
      }
    }
  }
})

The third step is to call the checkValidate method when the form is submitted:

<template>
  <div>
    <form action="/add" method="post" v-on:submit.prevent="checkValidate">
      <AddInput ref="addInput"></AddInput>
      <button type="submit">添加</button>
    </form>
  </div>
</template>

Through the above steps, we can realize the loss of focus inspection function. When the input box loses focus, the checkName method will be executed for verification. When the form is submitted, the checkValidate method is called to verify the form to ensure the correctness of the data entered by the user.

The above is the detailed content of vue loses focus check. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn