0
1

More than 1 year has passed since last update.

Vue.jsでinputタグを用いた入力文字の字数カウント

Posted at

Vue.jsでinputタグを用いた入力文字の字数カウント

① v-onディレクティブの利用

v-onディレクティブを用いることで、イベント発火時の JavaScript の実行が可能になります。
例えば

//v-on:イベント="関数"
<button v-on:click="hello()">ハローボタン</button>

と記述すると、ボタンクリック時にhello関数が実行される。

②イベントにkeyupイベントを記述する

keyupイベントはkeyが離されたタイミングで発火するイベントです。
→テキストに文字が打たれてキーが離れたタイミングでイベントを発火させるのに利用します。

<input @keyup="hello()"></input>

※@は「v-on:」の代わりに使えるものです
 keyupイベントによく似たものにkeydownイベントがあります。そのイベントはkeyが押されたタイミングで
 イベントが発火します。

③文字数をカウントし、表示する関数を作成する

実際に文字数をカウントし、表示する関数を「countWord」という名前で作成してみましょう。

//関数の書き方はvue.jsのmethod内の書き方で記述しています
1  countWord:function(){
2      const inputElement = document.getElementById("word");//inputの要素を取得する
3      console.log(inputElement.value.length);//入力されている文字数を表示する
4    }

④inputタグと先ほどの関数を合わせる

HTML側
<input id="word" @keyup="countWord()"></input>
vue側
1 countWord:function(){
2      const inputElement = document.getElementById("word");//inputの要素を取得する
3      console.log(inputElement.value.length);//入力されている文字数を表示する
4    }
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1