Vue.js VueJS-如果选项少于2个,则禁用选择下拉菜单
我有几个选择下拉列表,它们使用Axios调用提取数据。如果剩下的选项少于2个,我希望将下拉列表禁用为灰色。我已经设法禁用了提交按钮作为概念证明,但我无法使选择菜单本身禁用。也许你不能这样做,我不确定。就像大多数发布Vue问题的人一样。我是Vue的新手:任何帮助都将不胜感激Vue.js VueJS-如果选项少于2个,则禁用选择下拉菜单,vue.js,Vue.js,我有几个选择下拉列表,它们使用Axios调用提取数据。如果剩下的选项少于2个,我希望将下拉列表禁用为灰色。我已经设法禁用了提交按钮作为概念证明,但我无法使选择菜单本身禁用。也许你不能这样做,我不确定。就像大多数发布Vue问题的人一样。我是Vue的新手:任何帮助都将不胜感激 <div id="app"> <select v-model="quantity"> <option disabled value=""
<div id="app">
<select v-model="quantity">
<option disabled value="">Select</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select>
<button type="submit" :disabled="submitDisabled">Submit</button>
</div>
new Vue({
el: '#app',
data: {
quantity :""
},
computed: {
submitDisabled: function () {
return this.quantity < 2 ? true : false;
}
}
});
您可以使用指令将的disabled属性绑定到计算属性,如selectDisabled:
例如:
新Vue{
el:“应用程序”,
数据:{
数量:0,
选项:[1,2]
},
计算:{
submitDisabled:函数{
返回此值。数量<2;
},
选择禁用:功能{
返回this.options.length感谢您花时间提供帮助!但是,这似乎对我不起作用。无论选择的数量多少,选择都被禁用。是否有其他方法可以实现此目的?@user13928344我添加了一个示例,希望能有所帮助。vue.js创建s的方法是从data@user13928344这个很好用!非常感谢非常感谢您的帮助。非常感谢。我注意到当它禁用选择框时,它会显示第一个选项,“请选择”选项,这当然是它应该做的。但是,我需要它显示选择菜单中剩下的第二个也是唯一的选项。关于如何做的任何建议?对于我来说,上面的示例在c上没有显示任何内容Chrome或firefox。我建议您在目前的设置中提出一个新问题,它对我来说效果很好。如果您在选项中添加另一项:[1、2、3],它会按预期显示选择菜单。
<select v-model="quantity" v-bind:disabled="selectDisabled">