asp.net-mvc - 需要通过文本框和按钮向 DropDownList 添加新选项
问题描述
所以我一直在互联网上寻找一个体面的解决方案,但我试过的都没有奏效。问题是,我有 DropDownLists(其中 4 个)看起来像这样:(这些都在视图中)
Html.DropDownList("SeriesColor", new List<SelectListItem>
{
new SelectListItem {Text = "GR- Green", Value = "GR"},
new SelectListItem {Text = "BL - Blue", Value = "BL"},
new SelectListItem {Text = "LB - Light Blue", Value = "LB"},
new SelectListItem {Text = "NO - None", Value = "NO"},
new SelectListItem {Text = "OR - Orange", Value = "OR"},
new SelectListItem {Text = "PP - Purple", Value = "PP"}
我还有一个文本框和按钮:(也在视图中)
<input id="addD4" type="text" />
<button class="btn btn-default" type="button">Add Default</button>
我想要做的是允许用户输入一个值(任何东西),按下按钮并将其添加到下拉列表中。我见过的大多数解决方案要么已经过时,要么不支持 MVC/Razor。
解决方案
您必须通过 JavaScript 添加它们。您可以使用 JQuery 来执行此操作
首先将按钮 onclick 事件绑定到诸如 onclick="addNewItem()" 之类的 JavaScript 方法
function addNewItem(){
$("#SeriesColor").append($('<option>', {
value: $('#addD4').val() ,
text: $('#addD4').val()
});
}
推荐阅读
- java - 使用 wsimport 从本地 WSDL 文件生成 Web 客户端
- python - 使用带有 GPU 的 google colab,但现在无法正常工作
- stormcrawler - 异步工作者死了!... clojure.lang.PersistentVector 不能转换为类 java.lang.String
- crystal-reports - Crystal Reports 同一个报表在多个环境下的行距不一样?
- azure - azure - 如何集成 azure 高级应用服务身份验证/授权以访问 azure devops API(任务、管道)
- ruby-on-rails - 如何使用与局部变量匹配的动态创建的字符串作为该变量
- python - 如何将字符串(uri)拆分为Python中的嵌套字典
- azure - Azure Function 应用程序在 30 分钟后崩溃
- r - 如何更改卡方检验中的自由度
- java - jar 在 nexus 中部署了两次