@evomed

Как исключить из отправки формы пустые значения?

Форма
<form :action="route">
поля с onchange="this.form.submit()"
</form>

отправляет все значения формы на урл с перезагрузкой страницы. Как исключить из отправки значения с null? На бэке обрабатываю, но все пустые параметры формы в урл&parametr= хотелось бы исключить
  • Вопрос задан
  • 577 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
с перезагрузкой страницы

Ну тогда можно особо и не церемониться - вешайте на форму обработчик submit, в нём элементы, чьи значения надо исключить, удаляйте (el.remove()) или делайте неактивными (el.disabled = true). Например:

<form @submit="onSubmit">
  <div v-for="(v, k) in formData">
    <div>{{ k }}:</div>
    <div><input v-model="formData[k]" :name="k" :ref="k"></div>
  </div>
  <button>submit</button>
</form>

data: () => ({
  formData: {
    forename: '',
    surname: '',
    email: '',
  },
}),
methods: {
  onSubmit() {
    Object.entries(this.formData).forEach(([ k, v ]) => !v && (this.$refs[k][0].disabled = true));
  },
},
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы