質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

TypeScript

TypeScriptは、マイクロソフトによって開発された フリーでオープンソースのプログラミング言語です。 TypeScriptは、JavaScriptの構文の拡張であるので、既存の JavaScriptのコードにわずかな修正を加えれば動作します。

Q&A

解決済

1回答

1229閲覧

Typescript&Vue.jsでonchangeした要素のvalueを取得

weak_man

総合スコア8

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

TypeScript

TypeScriptは、マイクロソフトによって開発された フリーでオープンソースのプログラミング言語です。 TypeScriptは、JavaScriptの構文の拡張であるので、既存の JavaScriptのコードにわずかな修正を加えれば動作します。

0グッド

0クリップ

投稿2021/08/25 01:55

表題のとおりなのですが、
いくつか並ぶinputをonchangeした要素のvalueを取得したいです。

vue

1<input id="hoge1" type="number" min="1" max="100" step="1" required="required" name="num1" v-model="num1" @change="onChange" /> 2 3<input id="hoge2" type="number" min="5" max="10" step="0.1" required="required" name="num2" v-model="num2" @change="onChange" /> 4 5<input id="hoge3" type="number" min="100" max="10000" step="10" required="required" name="num3" v-model="num3" @change="onChange" />

このようなinputがあり、
この中の一つだけをonchangeした際に、
そのonchangeした要素のvalueだけ取得するにはどうすればいいでしょうか?

現状は以下のようなコードで、
一個ずつidを振って対応していますが、
これを「onchangeされた要素のvalue」という条件で書き換えたいです。

ts

1onChange() { 2 const element1 = document.getElementById('hoge1') as HTMLInputElement; 3 const value1: string = element1.value; 4 console.log(value1); 5 6 const element2 = document.getElementById('hoge2') as HTMLInputElement; 7 const value2: string = element2.value; 8 console.log(value2); 9 10 const element3 = document.getElementById('hoge3') as HTMLInputElement; 11 const value3: string = element3.value; 12 console.log(value3); 13} 14

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

イベントハンドラに渡されるイベントオブジェクトから対象の要素を取得してください

onChange(e) { console.log(e.target.name); console.log(e.target.value); },

※型は適宜指定してください

投稿2021/08/25 02:52

編集2021/08/25 02:53
k4a

総合スコア983

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

weak_man

2021/08/25 09:54

ありがとうございました。うまくいきました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問