0

我的表单有三种依赖输入方式,需要验证。

  1. 第一个下拉菜单
  2. 第二个下拉菜单
  3. 第三自由文本

形式

我需要帮助来实现required_if条件,因为语法有点令人困惑,无法让它发挥作用,并解决以下问题

  1. 当 [Issue Category] ​​的值为 'Other (Enter Detail)' 时,需要禁用 [Issue],[Detail] 字段成为必填项。
  2. 当 [Issue] 的值为 'Other (Enter Detail)' 时,[Detail] 字段成为必填项。
  3. 第二个下拉菜单需要 v-bind:key,但不确定如何使用数字来删除控制台中出现的错误。

代码沙盒

4

1 回答 1

2

首先,请在将来的问题中包含相关代码。代码沙箱很棒,非常有用,但在 Stack Overflow 上,目标是能够在站点内找到答案(无需离开它即可查看部分问题或答案)。

你不需要使用required_if. 相反,使用v-validate像这样的对象形式:

  <b-input 
    type="textarea" 
    v-model="item.detail" 
    v-validate="{'required':(item.issue_category == 'Other (Enter Detail)')}" 
    name="detail">
  </b-input>

对于您的其他问题,它基本上是相同的,只是您也忘记提供所需的 select a name。也不要required在那里混合 HTML5 属性,我认为这没有帮助:

          <b-select
            v-model="item.issue"
            name="Issue"
            v-validate="{'required':(item.issue_category != 'Other (Enter Detail)')}"               >

就是这样!在此处查看一个工作示例。

于 2019-05-09T20:48:07.953 回答