Movatterモバイル変換


[0]ホーム

URL:


Menu
×
See More 
Sign In
+1 Get Certified Upgrade Teachers Spaces Get Certified Upgrade Teachers Spaces
   ❮   
     ❯   

Vue Tutorial

Vue HOMEVue IntroVue DirectivesVue v-bindVue v-ifVue v-showVue v-forVue EventsVue v-onVue MethodsVue Event ModifiersVue FormsVue v-modelVue CSS BindingVue Computed PropertiesVue WatchersVue Templates

Scaling Up

Vue Why, How and SetupVue First SFC PageVue ComponentsVue PropsVue v-for ComponentsVue $emit()Vue Fallthrough AttributesVue Scoped StylingVue Local ComponentsVue SlotsVue v-slotVue Scoped SlotsVue Dynamic ComponentsVue TeleportVue HTTP RequestVue Template RefsVue Lifecycle HooksVue Provide/InjectVue RoutingVue Form InputsVue AnimationsVue Animations with v-forVue BuildVue Composition API

Vue Reference

Vue Built-in AttributesVue Built-in ComponentsVue Built-in ElementsVue Component InstanceVue DirectivesVue Instance OptionsVue Lifecycle Hooks

Vue Examples

Vue ExamplesVue ExercisesVue QuizVue SyllabusVue Study PlanVue ServerVue Certificate

Vue Template Refs

VueTemplate Refs are used to refer to specific DOM elements.

When theref attribute is set on an HTML tag, the resulting DOM element is added to the$refs object.

We can use theref attribute and the$refs object in Vue as an alternative to methods in plain JavaScript like getElementById() or querySelector().

The 'ref' Attribute and The '$refs' Object

HTML tags with theref attribute will be added to the$refs object and can be reached later from inside the<script> tag.

Example

The text inside a<p> element is changed.

App.vue:

<template>  <h1>Example</h1>  <p>Click the button to put "Hello!" as the text in the green p element.</p>  <button @click="changeVal">Change Text</button>  <p ref="pEl">This is the initial text</p></template><script>  export default {    methods: {      changeVal() {       this.$refs.pEl.innerHTML = "Hello!";      }    }  }</script>
Run Example »

Below is another example where the$refs object is used to copy the value of one tag into another tag.

Example

The text from the first<p> tag is copied into the second<p> tag.

App.vue:

<template>  <h1>Example</h1>  <p ref="p1">Click the button to copy this text into the paragraph below.</p>  <button @click="transferText">Transfer text</button>  <p ref="p2">...</p></template><script>  export default {    methods: {      transferText() {         this.$refs.p2.innerHTML = this.$refs.p1.innerHTML;      }    }  };</script>
Run Example »

Get The Input Value from '$refs'

We can go further into an HTML element added to the$refs object to access any property we want.

Example

A<p> element gets the same content as what's being written in the input field.

App.vue:

<template>  <h1>Example</h1>  <p>Start writing inside the input element, and the text will be copied into the last paragraph by the use of the '$refs' object.</p>  <input ref="inputEl" @input="getRefs" placeholder="Write something..">  <p ref="pEl"></p></template><script>  export default {    methods: {      getRefs() {         this.$refs.pEl.innerHTML = this.$refs.inputEl.value;      }    }  };</script>
Run Example »

'ref' with v-for

HTML elements created withv-for, with theref attribute, will be added to the$refs object as an array.

Example

The button reveals the the third list element stored as an array element inside the$refs object.

App.vue:

<template>  <h1>Example</h1>  <p>Click the button to reveal the 3rd list element stored as an array element in the $refs object.</p>  <button @click="getValue">Get the 3rd list element</button><br>  <ul>    <li v-for="x in liTexts" ref="liEl">{{ x }}</li>  </ul>  <pre>{{ thirdEl }}</pre></template><script>  export default {    data() {      return {        thirdEl: ' ',        liTexts: ['Apple','Banana','Kiwi','Tomato','Lichi']      }    },    methods: {      getValue() {         this.thirdEl = this.$refs.liEl[2].innerHTML;        console.log("this.$refs.liEl = ",this.$refs.liEl);      }    }  };</script><style>pre {  background-color: lightgreen;  display: inline-block;}</style>
Run Example »

Vue Exercises

Test Yourself With Exercises

Exercise:

Refs are used to refer to specific DOM elements.

Supply the missing code so that 'Hello World' is displayed in the second <p> tag when the application is mounted.

<template>  <p>This is just some text.</p>  <p>This is the initial text</p></template><script>  export default {    mounted() {      this..pEl.innerHTML = "Hello World!";    }  };</script>

Start the Exercise




×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
sales@w3schools.com

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
help@w3schools.com

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning.
Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness
of all content. While using W3Schools, you agree to have read and accepted ourterms of use,cookies andprivacy policy.

Copyright 1999-2025 by Refsnes Data. All Rights Reserved.W3Schools is Powered by W3.CSS.


[8]ページ先頭

©2009-2025 Movatter.jp