相关疑难解决方法(0)

MVC 3 jQuery验证/全局化数字/十进制字段

在Web.config文件中使用全球化culture ="da-DK"时,jQuery验证不起作用.

在丹麦,当我们为产品写价格时,我们使用符号19,95而不是美国19.95的方式,这给了我一个问题,我无法解决.

我已经启动了VS2010,新的MVC 3项目,添加了一个homeController,一个Product类和一个简单的标准编辑视图,错误已经存在.

产品类别:

public class Product
{
    public string name { get; set; }
    public string itemNo { get; set; }
    public decimal price { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

HomeController的:

public class homeController : Controller
{
    public ActionResult Index()
    {
        var product1 = new Product { name = "Testproduct", itemNo = "PRD-151541", price = 19 };
        return View(product1);
    }
}
Run Code Online (Sandbox Code Playgroud)

索引视图:

@model WebUI.DomainModel.Product

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>

@using (Html.BeginForm()) {
    @Html.ValidationSummary(true)
    <fieldset>
        <legend>Product</legend>

        <div class="editor-label"> …
Run Code Online (Sandbox Code Playgroud)

globalization validation jquery culture asp.net-mvc-3

66
推荐指数
3
解决办法
5万
查看次数

MVC3自定义格式化日期的不显眼日期验证

我有一个日期字段(我使用jquery ui datepicker)在我格式化的表单中,如下所示:

视图模型

[DisplayFormat(DataFormatString = "{0:dd-MMM-yyyy}", ApplyFormatInEditMode = true)]
public DateTime FooDate { get; set; }
Run Code Online (Sandbox Code Playgroud)

视图

@Html.EditorFor(m => m.FooDate)
Run Code Online (Sandbox Code Playgroud)

这正确地显示了我想要它的日期,例如 09-Nov-2011

我收到的问题发生在我按提交时.它一直告诉我日期无效....这是有效的,你这个蠢事!

有什么办法,我可以得到jquery/unobtrusive javascript忽略这个字段或允许这种格式通过?到目前为止,我可以让表单工作的唯一方法是,如果我不格式化日期,或使用{0:d}作为日期格式.

编辑:我已经创建了一个完全独立的布局+视图+控制器+模型来测试这个愚蠢的东西.仍然无法在IE/Safari中运行.我有来自nuget的最新jquery.validate/unobtrusive文件.

layout是空的.它只是加载以下文件:

"jquery-1.7.min.js"
"jquery-ui-1.8.16.min.js"
"jquery.validate.min.js"
"jquery.validate.unobtrusive.min.js"
Run Code Online (Sandbox Code Playgroud)

我的TestViewModel很简单:

public class TestViewModel
{
    [Display(Name = "Test Date:")]
    [DisplayFormat(DataFormatString = "{0:dd/MMM/yyyy}", ApplyFormatInEditMode = true)]
    public DateTime? TestDate { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我的TestController如下:

public class TestController : Controller
{
    public ActionResult Index()
    {
        var m = new TestViewModel();
        m.TestDate = DateTime.Now;
        return View(m);
    } …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc datepicker jquery-validate unobtrusive-validation asp.net-mvc-3

7
推荐指数
1
解决办法
1万
查看次数