如何从Vuetify的<v-form>组件中提取<form>元素

starleaf1

我有一个Vuetify表单ref,像这样

<v-form ref="form" method="post" @submit.prevent="handleSubmit">

我在上面附加了一个默认防止提交的处理程序,其方法如下:

window.fetch(`${this.$store.state.apiServer}/some-url`, {
  method: 'post',
  body: new FormData(this.$refs.form)
}).then(response => {
  // Do stuff with the response
}).catch(() => {
  // HCF
});

问题是new FormData()仅接受纯HTML<form>元素,this.$refs.form而是VueComponent有什么办法可以让我<form>从里面抢走<v-form>吗?

机会

您可以使用this。$ refs.form。$ el获得表单元素

这是工作中的代码笔:https ://codepen.io/chansv/pen/OJJOXPd ? editors = 1010

<div id="app">
  <v-app id="inspire">
    <v-form
      ref="form"
      v-model="valid"
      lazy-validation
    >
      <v-text-field
        v-model="name"
        :counter="10"
        :rules="nameRules"
        label="Name"
        required
      ></v-text-field>

      <v-text-field
        v-model="email"
        :rules="emailRules"
        label="E-mail"
        required
      ></v-text-field>
      <v-btn type="submit" @click="formSubmit">submit</v-btn>
    </v-form>
  </v-app>
</div>

new Vue({
  el: '#app',
  vuetify: new Vuetify(),
  data: () => ({
    valid: true,
    name: '',
    nameRules: [
      v => !!v || 'Name is required',
      v => (v && v.length <= 10) || 'Name must be less than 10 characters',
    ],
    email: '',
    emailRules: [
      v => !!v || 'E-mail is required',
      v => /.+@.+\..+/.test(v) || 'E-mail must be valid',
    ],
  }),

  methods: {
    formSubmit() {
      console.log(this.$refs.form.$el);
    }
  },
})

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用jsoup从html中的<form action=中提取链接

Vuetify组件v-form在声明的@submit事件处理程序上未响应

如何在Google Chrome中使用自定义元素v1扩展<form>?

使用 Vuetify 中的 v-form 和 v-text-field 时,Vue 警告和组件未显示

如何垂直对齐<form>元素?

如何使用Redux-Form V6创建自定义下拉字段组件?

如何使用Redux-Form v6创建可重用的表单组件组?

react-hook-form V7:如何使用 jets 对 MUI 组件进行单元测试?

如何从元素中提取链接?

如何从C#System.Windows.Form.HtmlElement中提取*立即*文本(即不是子代中的文本)

如何在angular-schema-form模式而不是在form中设置表单元素的样式?

在JS中引用时,如何使Form元素正常工作?

如何创建可重用的Form Vue组件

如何在React中构建Form组件

¿如何从功能组件React获取Form值?

<FORM> 元素从 DOM 中消失

Vuetify v-treeview 如何获取最后选择的元素?

从<input>元素中选择<form>元素

如何访问或激活Form Recognizer v2.1的公共预览?

默认浏览器表单验证在 Vuetify v-form 中不起作用

如何从jQuery中的元素中提取href?

如何从字典中提取某个元素

在需要时如何从文件中提取元素?

如何从Pyspark中的数组中提取元素

如何从Selenium Webdriver元素中提取链接?

如何从列表中提取相等元素的索引?

如何从Racket中的html中提取元素?

如何从 JSON 对象中提取元素

您如何从列表中提取不同的元素?