vue form表单最简写法

vue form表单最简单写法:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.js"></script>
  <title>vue</title>
</head>
<body>
  <div id="app">
    <form @submit.prevent="submitPost">
      <input type="text" name="name">
      <input type="password" name="pass">
      <div>
        <input type="checkbox" name="ischeckbox">
        <input type="radio" name="isradio">
        <div>
          <input type="mail" name="mail">
          <div>
            <input type="file" name="img">
          </div>
        </div>
      </div>
      <input type="submit" value="提交">
    </form>
  </div>
  <script>
  const app = new Vue({
      el: '#app',
      data: {
      },
      methods: {
        submitPost(event) {
          const formData = new FormData(event.target)
          for (let [a, b] of formData) {
            console.log('所有表单填写的内容:'+ a, b);
          }
        }
      }
  });
  </script>
</body>
</html>
在uniapp中,可以使用Vue3的Composition API来编写表单。具体步骤如下: 1. 在setup函数中定义表单数据和表单验证规则: ``` import { ref } from 'vue' export default { setup() { const formData = ref({ username: '', password: '' }) const rules = { username: [ { required: true, message: '请输入用户名', trigger: 'blur' } ], password: [ { required: true, message: '请输入密码', trigger: 'blur' } ] } return { formData, rules } } } ``` 2. 在模板中使用uni-form组件来渲染表单: ``` <template> <view> <uni-form :model="formData" :rules="rules"> <uni-form-item label="用户名" prop="username"> <uni-input v-model="formData.username" placeholder="请输入用户名"></uni-input> </uni-form-item> <uni-form-item label="密码" prop="password"> <uni-input v-model="formData.password" type="password" placeholder="请输入密码"></uni-input> </uni-form-item> <uni-form-item> <uni-button type="primary" @click="submitForm">提交</uni-button> </uni-form-item> </uni-form> </view> </template> ``` 3. 在methods中定义submitForm方法来提交表单: ``` import { ref } from 'vue' import { useForm } from '@ant-design-vue/use' export default { setup() { const formData = ref({ username: '', password: '' }) const rules = { username: [ { required: true, message: '请输入用户名', trigger: 'blur' } ], password: [ { required: true, message: '请输入密码', trigger: 'blur' } ] } const { validate } = useForm(formData, rules) const submitForm = () => { validate().then(() => { // 表单验证通过,可以提交表单 }).catch(() => { // 表单验证不通过,不提交表单 }) } return { formData, rules, submitForm } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值