C# 我知道怎么做,我已经在另一个项目中做过了,只是我觉得这和我在项目中经常做的事情不太一样,我教过我可以找到更好的解决方案。如果你还没有,看看knockoutjs列表绑定示例和代码。无论您是否绑定到“选择多个”,请选择!多个、ol、ul,甚至是一堆div,这使
C# 我知道怎么做,我已经在另一个项目中做过了,只是我觉得这和我在项目中经常做的事情不太一样,我教过我可以找到更好的解决方案。如果你还没有,看看knockoutjs列表绑定示例和代码。无论您是否绑定到“选择多个”,请选择!多个、ol、ul,甚至是一堆div,这使,c#,asp.net-mvc-3,model-binding,C#,Asp.net Mvc 3,Model Binding,我知道怎么做,我已经在另一个项目中做过了,只是我觉得这和我在项目中经常做的事情不太一样,我教过我可以找到更好的解决方案。如果你还没有,看看knockoutjs列表绑定示例和代码。无论您是否绑定到“选择多个”,请选择!多个、ol、ul,甚至是一堆div,这使得客户机代码在IMO中“更漂亮”?在MVC(.Net)中如何实现这一点?这看起来很像我做的,但是谢谢你的评论! <div class="row"> <div class="span12">
我知道怎么做,我已经在另一个项目中做过了,只是我觉得这和我在项目中经常做的事情不太一样,我教过我可以找到更好的解决方案。如果你还没有,看看knockoutjs列表绑定示例和代码。无论您是否绑定到“选择多个”,请选择!多个、ol、ul,甚至是一堆div,这使得客户机代码在IMO中“更漂亮”?在MVC(.Net)中如何实现这一点?这看起来很像我做的,但是谢谢你的评论!
<div class="row">
<div class="span12">
<div class="control-group">
<label for="AddBusinessUnit" class="control-label">@Strings.BusinessUnit</label>
<div class="controls">
<div class="input-append">
<input type="text" class="span2" size="16" id="AddBusinessUnit" />
<button class="btn" type="button" id="add-business-unit">@Strings.Add</button>
</div>
</div>
</div>
<div class="control-group">
<div class="controls">
@Html.ListBoxFor(model => model.BusinessUnits, SelectLists.BusinessUnits(Model.BusinessUnits, false), new { Multiple = "multiple" })<br/>
<a href="#" id="delete-business-unit">@Strings.DeleteSelectedElement</a>
</div>
</div>
</div>
</div>
<div class="form-actions">
<input type="submit" class="btn btn-primary" value="@Strings.Save" />
<a href="@Url.Action(MVC.Company.Index())" class="btn">@Strings.Cancel</a>
</div>
<script type="text/javascript">
$(document).ready(function () {
$('#add-business-unit').click(function (e) {
var bu = $('#AddBusinessUnit').val();
if (bu != '') {
$('#BusinessUnits').append($('<option></option>').val(bu).html(bu));
$('#AddBusinessUnit').val('');
}
e.preventDefault();
});
$('#delete-business-unit').click(function (e) {
$('#BusinessUnits :selected').remove();
e.preventDefault();
});
$('input[type="submit"]').click(function () {
$('#BusinessUnits option').attr('selected', 'selected');
});
});
public static class SelectLists
{
public static IList<SelectListItem> BusinessUnits(IList<string> bussinessUnits, bool addEmpty, string selected = "")
{
var list = new List<SelectListItem>();
if(addEmpty) list.Add(new SelectListItem());
list.AddRange(bussinessUnits.Select(businessUnit => new SelectListItem {Selected = selected == businessUnit, Text = businessUnit, Value = businessUnit}));
return list;
}
}