Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

214
Visualizações
¿Cómo se pueden validar las entradas dentro de v-for?

ingrese la descripción de la imagen aquí

Tengo this.userGroups

[ { "id": 46, "group_id": 38, "url": "1", "url_num": 1, "max_iteration": 2 }, { "id": 45, "group_id": 38, "url ": "2", "url_num": 1, "max_iteration": 2 }, { "id": 44, "group_id": 38, "url": "3", "url_num": 1, "max_iteration": 2 }, { "id": 43, "group_id": 38, "url": "4", "url_num": 1, "max_iteration": 2 } ]

 <v-row v-for="(urlGroup, index) in urlGroups" :key="index"> <v-col cols="12" sm="6" md="3"> <v-text-field required v-model="urlGroup.url" label="URL" clear-icon="mdi-close-circle" clearable type="text" @click:clear="removeUrl(index)"></v-text-field> </v-col> </v-row>

required no parece funcionar porque todavía puedo enviar el formulario sin proporcionar ningún valor. Solía hacer esto en un solo campo de texto, pero ahora es dinámico, no tengo idea de cómo hacerlo.

 url: [(v) => !!v || 'URL is required']

¿Cómo puedo agregar una regla de validación a todos ellos para que se escriba la URL y se requiera?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

La propiedad de rules de v-text-field acepta una serie de reglas, por lo que puede pasar una regla para hacer cumplir "requerido" y otra para validar la entrada de URL:

 <v-text-field :rules="[rules.required, rules.url]">
 const isValidUrl = value => { // https://stackoverflow.com/a/17773849/6277151 const urlRegex = /(https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9]+\.[^\s]{2,}|www\.[a-zA-Z0-9]+\.[^\s]{2,})/gi return urlRegex.test(value) } export default { data() { return { rules: { required: value => !!value || 'Required', url: value => isValidUrl(value) || 'Invalid URL', }, ⋮ } } }

Para evitar que se v-form , puede deshabilitar el botón ENVIAR cuando el formulario no es válido, lo que se refleja en el value del formulario :

 <v-form @submit="submit" v-model="formValid"> ⋮ <v-btn :disabled="!formValid" type="submit">Submit</v-btn> </v-form>
 export default { data() { return { formValid: false, ⋮ } }, methods: { submit() { if (!this.formValid) return // submit form here }, ⋮ } }

manifestación

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda