如果满足两个条件之一,请启用按钮

我正在处理此表单,根据在组合框中选择的内容,将显示另一个组合框或输入字段。并且应该禁用该按钮,直到在该组合框中选择了某些内容或输入的长度超过3。我不能让最后一点工作。


我试过这个:


<button type="submit" class="btn btn-primary btn-block" :disabled="clientNumberInput.length < 3 || selectedClient === null">{{labels.lblButtonSearch}}</button>

这个计算属性:


searchButtonEnabler() {

    if (this.clientNumberInput.length < 3 || this.selectedClient === null)

        return true

    else

        return false

}

但它不起作用。我相信这是因为OR在Javascript中的工作方式。但是我想不出任何其他方法来做到这一点。


编辑:根据要求,im添加输入字段代码。


<input v-if="selectedSearchByFilter != null && selectedBusiness.id == 3 && selectedSearchByFilter.id == 2"

                           name="clientNumber"

                           type="text"

                           class="form-control"

                           v-model="clientNumberInput"/>

客户端编号输入的值通过 v 模型进行更新。我有两个p标签,显示客户端NumberInput和selectedClient的值,它们按预期工作。


宝慕林4294392
浏览 116回答 2
2回答

青春有我

我最初误解了“禁用,直到在该组合框中选择了某些内容或输入的长度超过3”。实际上你需要(或clientNumberInput.length < 3 && selectedClient === nullclientNumberInput.length < 3 && !selectedClient)逻辑:已启用 = 数字 ||客户所以:已禁用 = !启用 = !(客户端||号) = !数 && !客户端

潇潇雨雨

这是你的对象应该是什么样子的,selectedSearchByFilter: {id:2},selectedBusiness: { id:3}试试这个小提琴链接
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript