在我的表單中,我從一個列表框移動類別另一這樣的:
如何創建一個空的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