Javascript 使用JQuery验证Razor视图中的字段
我试图对Razor视图中的字段使用自定义JQuery验证,但我不知道如何将该字段与JQuery函数关联,我使用过JQuery,但使用的是html页面和表单,而不是Razor视图中的HtmlHelpers 这是我想要验证的字段(我在同一页面中引用了我需要验证的JQuery.js) 我试着在它里面放一个id,将EditorFor改为TextBoxFor,然后从JQuery函数调用它,但没有成功Javascript 使用JQuery验证Razor视图中的字段,javascript,c#,jquery,asp.net-mvc,razor,Javascript,C#,Jquery,Asp.net Mvc,Razor,我试图对Razor视图中的字段使用自定义JQuery验证,但我不知道如何将该字段与JQuery函数关联,我使用过JQuery,但使用的是html页面和表单,而不是Razor视图中的HtmlHelpers 这是我想要验证的字段(我在同一页面中引用了我需要验证的JQuery.js) 我试着在它里面放一个id,将EditorFor改为TextBoxFor,然后从JQuery函数调用它,但没有成功 @Html.TextBoxFor(model => model.Name, new { id="
@Html.TextBoxFor(model => model.Name, new { id="artistName", htmlAttributes = new { @class = "form-control" } })
这是我在JQuery中使用的函数,但我找不到如何将其绑定到Html帮助程序:
$(document).ready(function () {
$("#artistName").on("blur",function(){
if ($(this).val().match('^[a-zA-Z]{3,16}$')) {
alert("Valid name");
}
else {
alert("That's not a name");
}
})
})
删除id属性并使用$(“#Name”)作为选择器
@Html.TextBoxFor(model => model.Name, new { htmlAttributes = new { @class = "form-control" } })
$("#Name").on("blur",function(){
if ($(this).val().match('^[a-zA-Z]{3,16}$')) {
alert("Valid name");
}
else {
alert("That's not a name");
}
})
是否绝对有必要使用Javascript进行验证?可以使用数据注释验证字段。请调查一下
如果您确实需要使用jquery,那么请查看jquery验证插件 是的,我已经使用数据注释进行了验证,但我想知道如何使用自定义JQuery验证字段,而不使用插件。应该是有问题的,因为它不工作,我可以在文本框中输入任何内容,然后发送到数据库而不会出现问题。还有一个想法。您也可以将此验证代码放在“提交”按钮的“单击”事件中,而不是放在文本框的“模糊”事件中。使用“提交”按钮效果很好,我不知道TextboxFor字段上的“模糊”事件发生了什么,我更喜欢使用“模糊”事件进行即时验证。。。我会努力找出我不知道发生了什么我猜我更新的网页不正确,但它现在就这样工作!!!
@Html.TextBoxFor(model => model.Name, new { htmlAttributes = new { @class = "form-control" } })
$("#Name").on("blur",function(){
if ($(this).val().match('^[a-zA-Z]{3,16}$')) {
alert("Valid name");
}
else {
alert("That's not a name");
}
})