如何使用jquery禁用列表框中的多项选择?还是javascript?

问题描述 投票:5回答:3

我的页面上有一个列表框。

<td><%=Html.ListBox("listServiceTypes", Model.ServiceTypeListAll, new { style = "width: 500px;height:200px;" })%>

我需要禁用从列表框中选择多个项目?我正在做类似选择一项的操作,然后单击删除按钮在页面上从列表框中删除一项。

任何人都可以帮助我如何停用或禁用列表框中的多个项目

我的页面上有一个列表框。

我需要禁用选择多个...] >>

可以

使用以下jQuery:
$(function(){
  $("select[name='listServiceTypes']").removeAttr('multiple');
});

但是,最好在服务器端执行此操作。与其使用Html.ListBox,不如使用Html.DropDownList

<%=Html.DropDownList("listServiceTypes", 
                Model.ServiceTypeListAll, 
                new { style = "width: 500px;height:200px", size=4 }); %>

这无需执行任何jQuery / JavaScript来删除multiple属性,因为它产生几乎相同的HTML,但没有multiple属性。 size的值大于1会告诉浏览器将其显示为多行列表框。

此脚本将关闭页面上所有选择控件的多项选择。

<script type="text/javascript">
    $(document).ready(function () {
        $('select').removeAttr('multiple');
    });
</script>

我想获得一个带有单选而不是下拉列表的列表框。这正是我的意思。基本上,将ListBoxFor添加为大小> 1,然后使用jQuery删除多选。

JS部分:

<script type="text/javascript">
    $(function () {
        $(document).ready(function () {
            $('.NoMultiSelect').removeAttr('multiple');
        });
    });
</script>

html部分:

@Html.ListBoxFor(m => Model.SelectedItems, Model.AllItems, new {  @class = "NoMultiSelect form-control", size = 4, style = "width: 250px; height: 300px;" })
javascript asp.net jquery asp.net-mvc asp.net-mvc-2
3个回答
10
投票

可以


3
投票

此脚本将关闭页面上所有选择控件的多项选择。


0
投票

我想获得一个带有单选而不是下拉列表的列表框。这正是我的意思。基本上,将ListBoxFor添加为大小> 1,然后使用jQuery删除多选。

© www.soinside.com 2019 - 2024. All rights reserved.