在我的表单中,我从一个列表框移动类别另一这样的:
如何创建一个空的Listbox并传递选项而不选择它们?
底盒是“输入”即当表单张贴在服务器端的阅读框。以下是我创建的列表框:
<%: Html.ListBoxFor(m => m.categories, Model.categories)%>
我在这里有两个问题:
在火狐,当窗体加载首次底盒总是有一个默认3210。有没有可能在服务器端删除这个? IE似乎创建一个空框但不是FF。
要解决这个问题,我将删除页面加载时的空白选项。与此相关的一个问题是,当表单发生错误而未提交时,选项会再次被删除。为了发布底部框中的选项,他们必须被选中。为了解决这个问题,我使用了下面的jQuery来选择表单上的选项。
jQuery的选择上,提交选项:
$("form").submit(function (event) {
$("#categories").find("option").attr('selected', 'selected');
});
jQuery来负载删除选项:
$("#categories").find("option").remove();
质询
1.我可以创建一个空在所有浏览器中工作的列表框?
2.我必须选择底部框中的选项还是有解决方法?澄清:我希望尽可能在服务器端完成,最好是与MVC相关的东西。
这听起来像个好主意! – Niklas