gpt4 book ai didi

jquery - MVC 3 jQuery 验证/数字/小数字段的全局化

转载 作者:IT王子 更新时间:2023-10-29 03:26:26 26 4
gpt4 key购买 nike

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

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

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

产品类别:

public class Product
{
public string name { get; set; }
public string itemNo { get; set; }
public decimal price { get; set; }
}

家庭 Controller :

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

索引 View :

@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">
@Html.LabelFor(model => model.name)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.name)
@Html.ValidationMessageFor(model => model.name)
</div>

<div class="editor-label">
@Html.LabelFor(model => model.itemNo)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.itemNo)
@Html.ValidationMessageFor(model => model.itemNo)
</div>

<div class="editor-label">
@Html.LabelFor(model => model.price)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.price)
@Html.ValidationMessageFor(model => model.price)
</div>

<p>
<input type="submit" value="Save" />
</p>
</fieldset>
}

结果:

很遗憾,我无法在此处提交图片 - 所以请点击此链接查看结果: http://www.designvision.dk/temp/mvc3_razor_validation_error.gif

所以 - 在运行网站时,该字段将设置为 19,00 - 这是正确的文化定义 - 但在尝试保存时,验证失败。

请帮忙...

最佳答案

你可以试试 jQuery Globalization plugin来自微软:

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

<script src="@Url.Content("~/Scripts/jquery.glob.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/globinfo/jquery.glob.da-dk.js")" type="text/javascript"></script>
<script type="text/javascript">
$.validator.methods.number = function (value, element) {
return !isNaN($.parseFloat(value));
}

$(function () {
$.preferCulture('da-DK');
});
</script>

插件已重命名并移动,您应该使用 Globalize (2012 年 3 月)

<script src="@Url.Content("~/Scripts/jquery.globalize/globalize.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.globalize/cultures/globalize.culture.da-DK.js")" type="text/javascript"></script>
<script type="text/javascript">
$.validator.methods.number = function (value, element) {
return !isNaN(Globalize.parseFloat(value));
}

$(document).ready(function () {
Globalize.culture('da-DK');
});
</script>

关于 Scott Hanselman blog post 的更多信息


关于jquery - MVC 3 jQuery 验证/数字/小数字段的全局化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5199835/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com