如何使用 Asp.NET MVC 中的复选框创建 MultiSelect 下拉列表

时间:2021-01-04 01:18:37

标签: jquery asp.net-mvc twitter-bootstrap

我想使用带有复选框的 asp.net mvc 多选下拉菜单。 如何以最简单的方式添加复选框? 我正在使用引导程序 v3

import pyautogui, time, keyboard
time.sleep(5)
while True:
    keyboard.press_and_release('e')   #this is the same as pyautogui.press("e")
    pyautogui.click()
    if (keyboard.is_pressed('w') or keyboard.is_pressed('a')) or (keyboard.is_pressed('s') or keyboard.is_pressed('d')):
        break   #this is your stop() function

2 个答案:

答案 0 :(得分:1)

这是一个示例,基于@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 :(得分:1)

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 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/

相关问题