фильтровать текстовое поле, чтобы оно поддерживало только целые числа и не было пустым в vue. js - PullRequest
0 голосов
/ 07 апреля 2020

Я работаю с vue. js, и мне нужно, чтобы в текстовом поле я мог вводить только целочисленные значения, в дополнение к тому, что значение величины не может быть равно 0, а если поле пустое, назначьте это значение 1. только и пытался это не допустить десятичных дробей:

<input type="number" min="1" @keydown="filterKey"></input>

filterKey(e){
  const key = e.key;
  if (key === '.')
  return e.preventDefault();
}

, но я не знаю, как управлять другими фильтрами, какие-либо идеи, как я могу это сделать?

1 Ответ

0 голосов
/ 07 апреля 2020

попробуйте это: скрипт:

  data: () => ({
    num: 1
  }),
  methods: {
    filterKey(e) {
      const key = e.key;
      if (key === ".") return e.preventDefault();
    },
    change(e) {
      if (!this.num || parseInt(this.num, 0) === 0) this.num = 1;
      else this.num = parseInt(this.num, 0);
    }
  }

шаблон:

<input type="number" v-model="num" @keydown="filterKey" @blur="change">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...