Asp.net mvc 列表框控件MVC上显示的空记录
我的视图上有两个列表框控件。左侧的列表框包含数据,而右侧的列表框不包含任何数据。因此,我创建了一个空列表,并将其绑定到右侧的listbox,以避免出现null异常。下面是我的控制器的代码Asp.net mvc 列表框控件MVC上显示的空记录,asp.net-mvc,asp.net-mvc-3,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 3,Asp.net Mvc 4,我的视图上有两个列表框控件。左侧的列表框包含数据,而右侧的列表框不包含任何数据。因此,我创建了一个空列表,并将其绑定到右侧的listbox,以避免出现null异常。下面是我的控制器的代码 SubscriptionViewModel subscriptionViewModel = new SubscriptionViewModel(); IEnumerable<SelectListItem> selectedExchanges = new SelectList(new[] { "
SubscriptionViewModel subscriptionViewModel = new SubscriptionViewModel();
IEnumerable<SelectListItem> selectedExchanges = new SelectList(new[] { "" });
return View(subscriptionViewModel);
<>这里发生的是,在空白字符串之后添加该项。如果您看到上面的代码,我将用一个空字符串初始化右侧的列表框。因此,在我的列表框的顶行中可以看到一个空白。我怎样才能去掉这个?删除空字符串。客户端或服务器端应该可以。我得到一个空异常作为模型。如果我不分配空字符串,SelectedExchange包含空值。删除新的[]{}?啊,我看到您正在从列表中创建多选择列表并传入值。可能就是你所需要的。实际上,它是这样工作的:IEnumerable selectedExchanges=new SelectList,Value,Text;
@Html.ListBoxFor(m => m.SelectedExchangesIds, new MultiSelectList((IEnumerable<SelectListItem>)Model.SelectedExchanges, "Value", "Text"), new { id = "destinationExchanges", name = "destinationExchanges", @style = "width: 250px;height: 144px;", @CssClass = "MyListBox" })
$('#ShiftExchangesRight').click(function (e) {
$('#sourceExchanges option:selected').appendTo('#destinationExchanges');
e.preventDefault();
});