[英]How to Create MultiSelect dropdown with checkboxes in Asp.NET MVC
我想使用带有复选框的 asp.net mvc 多选下拉菜单。 如何以最简单的方式添加复选框? 我正在使用引导程序 v3
@Html.ListBoxFor(m => Model.DepDashTaskLists[i].BusinessRuleAnswers, new MultiSelectList(slh.GetRegistrationAnswerLookup(Model.DepDashTaskLists[i].BusinessRuleQuestion1), "Value", "Text", Model.DepDashTaskLists[i].BusinessRuleAnswers), new { @class = "form-control", @id = "RuleQuestionListBoxAnswer_" + @Model.DepDashTaskLists[i].TaskId, @rows = "2", @columns = "40" })
这是一个示例,基于@jishan siddique 的建议。 您可以访问链接以参考更多: http://davidstutz.github.io/bootstrap-multiselect/
希望能帮到你,我的朋友:))
1. Model
public class ProductViewModel
{
public List<SelectListItem> Products { get; set; }
public int[] ProductIds { get; set; }
}
2. Controller
public IActionResult Index()
{
var model = new ProductViewModel()
{
Products = GetProducts()
};
return View(model);
}
[HttpPost]
public ActionResult Index(ProductViewModel product)
{
return View(product);
}
private List<SelectListItem> GetProducts()
{
var data = new List<SelectListItem>()
{
new SelectListItem()
{
Value = "1", Text = "Tomato"
},
new SelectListItem()
{
Value = "2", Text = "Orange"
},
new SelectListItem()
{
Value = "3", Text = "Potato"
}
};
return data;
}
3. Views
@model CiberProject.ViewModels.ProductViewModel
@{
ViewData["Title"] = "Home Page";
}
<link href="https://cdn.rawgit.com/davidstutz/bootstrap-multiselect/master/dist/css/bootstrap-multiselect.css" rel="stylesheet" type="text/css" />
@using (Html.BeginForm("Index", "Home", FormMethod.Post))
{
@Html.Label("Products:")
<br />
<br />
@Html.ListBoxFor(m => m.ProductIds, Model.Products, new { @class = "listbox" })
<br />
<br />
<input type="submit" value="Submit" />
}
@section Scripts
{
<script src="https://cdn.rawgit.com/davidstutz/bootstrap-multiselect/master/dist/js/bootstrap-multiselect.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$('.listbox').multiselect({
includeSelectAllOption: true
});
});
</script>
}
1首先将 jQuery 和 Bootstrap 框架加载到 HTML 文档中。
<!-- jQuery -->
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<!-- Bootstrap CSS -->
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<!-- Bootstrap JS -->
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
2在此之后,将 Bootstrap 多选multiselect's
CSS 和 JavaScript 文件包含到您的页面中。
<!-- Bootstrap Multiselect CSS -->
<link rel="stylesheet" href="css/bootstrap-multiselect.css">
<!-- Bootstrap Multiselect JS -->
<script data-main="dist/js/" src="js/require.min.js"></script>
3现在使用具有唯一 ID 的选项列表创建 HTML select 元素。 就像下面一样。
<select id="mySelect" multiple="multiple">
<option value="Option one">Option one</option>
<option value="Option two">Option two</option>
<option value="Option three">Option three</option>
<option value="Option four">Option four</option>
<option value="Option five">Option five</option>
<option value="Option six">Option six</option>
</select>
4最后调用插件来激活多选。
<script>
require(['bootstrap-multiselect'], function(purchase){
$('#mySelect').multiselect();
});
</script>
您可以访问链接以参考更多信息: https://www.codehim.com/demo/bootstrap-multiselect-dropdown/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.