[英]Submit not working when there is a q-select
我添加了一个 q-select 并且我将表单设置为提交事件。 有 q-select 时提交事件不起作用。但没有 q-select 它正在工作。
<q-form @submit.prevent="addNewRole" class="q-gutter-md">
<q-input
v-model="newRoleForm.name"
type="text"
autofocus
label="Role Name"
color="info"
required
/>
<q-select
v-model="newRoleForm.accessLevel"
:options="accessTypes"
label="Access Level"
color="info"
/>
<q-btn
class="q-mt-lg"
color="primary"
icon="add_moderator"
label="Add Role"
/>
</q-form>
<script setup>
const addNewRole = () => {
alert("works");
};
</script>
您应该删除.prevent
修饰符,将按钮的类型设置为submit
,将rules
属性添加到q-input
并定义绑定数据:
<template>
<q-form class="q-gutter-md" @submit="addNewRole">
<q-input
v-model="newRoleForm.name"
type="text"
autofocus
label="Role Name"
color="info"
:rules="[ruleRequired]"
/>
<q-select
v-model="newRoleForm.accessLevel"
:options="accessTypes"
label="Access Level"
color="info"
/>
<q-btn
type="submit"
class="q-mt-lg"
color="primary"
icon="add_moderator"
label="Add Role"
/>
</q-form>
</template>
<script>
export default
{
data()
{
return {
newRoleForm:
{
name: '',
accessLevel: null,
},
};
},
computed:
{
accessTypes()
{
return [
{
value: 'full',
label: 'Full access',
},
{
value: 'restricted',
label: 'Restricted access',
},
];
},
},
methods:
{
ruleRequired(val)
{
return typeof val === 'number' ? true : (Array.isArray(val) ? val.length > 0 : !!val) || 'Required field';
}
}
}
</script>
为按钮添加类型submit
,同时从@submit.prevent
中删除阻止
<q-btn
type="submit"
class="q-mt-lg"
color="primary"
icon="add_moderator"
label="Add Role"
/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.