我想禁用我的提交按钮,直到我的表单被正确填写,这就是我目前所拥有的:
<form>
<input type="text" class="form-control" v-validate="'required|email'" name="email" placeholder="Email" v-model="userCreate.userPrincipalName" />
<span v-show="errors.has('email')">{{ errors.first('email') }}</span>
<button v-if="errors.any()" disabled="disabled" class="btn btn-primary" v-on:click="sendInvite();" data-dismiss="modal" type="submit">Send Invite</button>
<button v-else="errors.any()" class="btn btn-primary" v-on:click="sendInvite();" data-dismiss="modal" type="submit">Send Invite</button>
</form>
以上仅在我开始输入值后打印错误消息并禁用我的提交按钮。在开始与输入交互之前,我需要从一开始就禁用它,这样我就不能发送空字符串。
另一个问题是是否有比使用更好的方法v-if
来做到这一点?
编辑:
userCreate: {
customerId: null,
userPrincipalName: '',
name: 'unknown',
isAdmin: false,
isGlobalAdmin: false,
parkIds: []
}