Vuejs2 使用Vue.js v-for填充select时,如何添加禁用的选项

Vuejs2 使用Vue.js v-for填充select时,如何添加禁用的选项,vuejs2,Vuejs2,我想向已使用v-for绑定的select添加一个禁用的选项。上的Vue文档建议添加一个,但示例使用的是硬编码选项 我想创建一个带有v-for绑定的禁用“请选择一个”,以强制用户选择一个选项,而不是默认为特定的选择。目前,我在绑定select的列表中添加了一个“Please select one”(请选择一个)选项,它会显示出来并正常工作,但我不希望用户能够再次选择它 当使用v-for绑定到select时,如何实现这一点 //Contrived example of adding the defa

我想向已使用v-for绑定的select添加一个禁用的选项。上的Vue文档建议添加一个,但示例使用的是硬编码选项

我想创建一个带有v-for绑定的禁用“请选择一个”,以强制用户选择一个选项,而不是默认为特定的选择。目前,我在绑定select的列表中添加了一个“Please select one”(请选择一个)选项,它会显示出来并正常工作,但我不希望用户能够再次选择它

当使用v-for绑定到select时,如何实现这一点

//Contrived example of adding the default selection text
data.dashboardDefinitionList.splice(0, 0, { Id: 0, Name:"Select a Dashboard" });

<select id="dashboardSelectNew" v-model="formVariables.dashboardDefIndex" v-on:change="getDashboard">
       <option v-for="(dd, index) in dashboardDefinitionList"
       :value="dd.Id"
       :selected="formVariables.dashboardDefIndex == index">
          {{ dd.Name }}
        </option>
</select>

先设置禁用选项,然后执行v-for


您希望从select中获得什么样的值?v型表示需要数组索引,但将value属性设置为idproperty@Phil很好的捕获,试图解决手头问题的剩余部分。这让我明白了,我想你错过了我想要最初选择的“请选择一个”的事实,因此我不会随意加载“错误”的第一个条目。因此,为了设置初始值,我将“selected”添加到“Please select one”选项中。还发现@change似乎不起作用,我不得不坚持使用v-on:change。最后,我问为什么@change对我不起作用,我使用的是.NETMVC.cshtml页面。在使用剃须刀时,需要将剃须刀的长度加倍
<select id="dashboardSelectNew" v-model="formVariables.dashboardDefinition" @change="getDashboard">
  <option disabled value="">Please select one</option>
  <option v-for="dd in dashboardDefinitionList" :key="dd.id" :value="dd">
    {{ dd.Name }}
  </option>
</select>