我在与迪朗达尔模板+微风asp.net mvc的项目。
我想对我的看法定义的验证逻辑添加/编辑操作。
到目前为止,它适用于文本,从下拉列表填充数据库:当元素没有包含任何数据,则该元素被标记为红色感谢淘汰赛验证。
不过,这并不为下拉从简单的列表填充工作。
其中填充列表中的元素来自于一个枚举:
public class Transport
{
[Key]
int id { get; set; }
...
[Required]
public EnumCategory Category { get; set; }
}
public enum EnumCategory
{
Cat1,
Cat2,
Cat3
}
第一个问题:我不知道是否有可能检索我的模型(服务器端)枚举使用它的客户端? 现在,我创建了一个数组的客户端来填充我的下拉列表:
var categories = [
{ id: 1, description: "Cat1" },
{ id: 2, description: "Cat2" },
{ id: 3, description: "Cat3" }];
问题二:我的显示视图时,如果类别下拉菜单中已经包含了一些数据,验证工作(我指的是场以红色标记,如果用户清除下拉列表)。 但是,如果类别下拉没”包含显示视图时,则下拉没有被标记为红色的任何数据。
我做什么,当验证失败时改变元素的背景颜色,如果没有有效的(感谢CSS“输入验证错误” >>红色)。
<select data-bind="options: $root.categories,
optionsText: 'description',
optionsValue: 'id',
optionsCaption: 'Choose...',
value: category,
validationOptions: { errorElementClass: 'input-validation-error' },
valueUpdate: 'afterkeydown'">
</select>
有谁知道为什么我的下拉验证didin't工作?
谢谢。