创建Jquery cascadia下拉菜单时需要帮助
我对jquery非常陌生,不知道该怎么做。我做了一个快速的样例项目来尝试它,但在jquery方面还没有取得任何进展。
这是我的模型。
public class Life
{
public static List<Life> MyList = new List<Life>
{
new Life {first="Animal",second="Mammal",third ="human"},
new Life {first="Plant",second="Tree",third ="cherry"},
new Life {first="Plant",second="Grass",third ="rye"},
new Life {first="Plant",second="Tree",third ="oak"}
};
public string first {get; set;}
public string second {get; set;}
public string third {get; set;}
}
我想创建一个有3个下拉列表的视图。第一行填充第一行,然后第二行进入第二个下拉列表,因此第一个下拉列表将包含Animal和plant。如果你选择了植物,你将不会在第二个下拉列表中看到哺乳动物。
有什么好的例子吗?或者,我如何将此示例模型转换为执行此操作的视图?
发布于 2011-05-31 22:30:07
创建这样的下拉列表最酷的方式就是使用html helper。我为languages picker创建了一个(我的非常基础,数据应该来自db等,但我没有时间)。这将给你一个艰难的想法:
下拉帮助器:
public static class HtmlHelpers
{
public static MvcHtmlString LanguageDropDownListFor<TModel, TValue>(this HtmlHelper<TModel> html, Expression<Func<TModel, TValue>> expression)
{
var dutch = new SelectListItem() { Selected = true, Text = "nl-be", Value = "nl-be" };
var french = new SelectListItem() { Selected = false, Text = "fr-be", Value = "fr-be" };
var list = new List<SelectListItem> { dutch, french };
return html.DropDownListFor(expression, list);
}
}
然后我有了一个模型(只有语言字段对您来说是重要的!):
public class Answer
{
[Key]
public Guid Id { get; set; }
public Guid QuestionId { get; set; }
public virtual Question Question { get; set; }
public string Text { get; set; }
[MaxLength(5)]
public string Language { get; set; }
public int Order { get; set; }
public virtual ICollection<UserAnswer> UserAnswers { get; set; }
}
然后在视图中使用:
@Html.LanguageDropDownListFor(model => model.Language)
@Html.ValidationMessageFor(model => model.Language)
如果您需要更多帮助,请告诉我:)
https://stackoverflow.com/questions/6187307
复制相似问题