У меня есть поле ввода, которое должно иметь только набор символов, что я делаю, анализируя входное значение через регулярное выражение.Это работает в Firefox, пока я не добавляю атрибут type = "number".
Является ли скрипт неправильным или это может быть ошибка в vue или firefox?
Код здесь jsFiddle
new Vue({
el: "#app",
data: {
message: ""
},
methods: {
mask(input) {
const validCharsForNumberFields = /[0-9]*(,|\.)?[0-9]*/gm
this.message = input.target.value.match(validCharsForNumberFields)[0]
}
}
})
<script type="text/javascript" src="https://unpkg.com/vue"></script>
<div id="app">
<div>
<!-- Remove the type="number" attribute to make the parsing work in firefox -->
<input @input="mask" v-model="message" type="number" placeholder="Try numbers">
<p>Message is: {{ message }}</p>
</div>
</div>
edit: Кстати, фрагмент в этом посте ведет себя не так, как код в jsFiddle.Не уверен почему.Я постараюсь понять это.Между тем, именно версия jsFiddle ведет себя так же, как и локальный запуск этого кода.