远程验证无法正常工作
问题描述:
我正在试图在ASP MVC3中进行远程验证。我花了几个小时阅读和尝试,但我没有达到它。远程验证无法正常工作
首先......我在Web.config文件中添加了此行的appSettings
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
然后,我就与dataanotations类。
Public Class PackageCreationInfo
'Lot of Properties here...
<DisplayName("Id Modalidad")>
<Remote("ModeExists", "PreactivatedLicenses", AdditionalFields:="IdVersion")>
Public Property IdMode As Integer
<Required(ErrorMessage:="La Versión es obligatoria")>
<DisplayName("Id Versión")>
Public Property IdVersion As Integer
End Class
在我看来,我添加了这个脚本
<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>
而且我在_layout已经这样的人
<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.datepick-es.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/Plugins/Expander/expand.js")" type="text/javascript"></script>
然后,在我的控制,我有这个功能
Public Function ModeExists(ByVal IdMode As Integer, IdVersion As Integer) As JsonResult
Dim ExistModeForThisVersion As Boolean = _ProductApps.ExistModeForVersion(IdMode, 13)
If (ExistModeForThisVersion) Then
Return Json(String.Format("Esta modalidad no está disponible en la versión seleccionada."), JsonRequestBehavior.AllowGet)
Else
Return Json(True, JsonRequestBehavior.AllowGet)
End If
End Function
我的问题是,我不能得到这个功能离子叫。 事实是,生成的HTML没有data-val-remote属性或类似的东西。
不属于“远程”的其他客户端验证正在运行。 可能是什么问题?
谢谢。
答
对不起......我犯了一个愚蠢的错误(另一个)
我会在这里写我的错误当作忏悔,因为有远程 posibility,它可以帮助的人。
在我看来......我写
@Html.DropDownList("IdProgramMode", New SelectList(ViewBag.ProductModesList, "Id", "Mode"))
@Html.ValidationMessageFor(Function(model) model.IdMode)
但应
@Html.DropDownList("IdMode", New SelectList(ViewBag.ProductModesList, "Id", "Mode"))
@Html.ValidationMessageFor(Function(model) model.IdMode)
该字段的名称相匹配的属性的名称是非常重要的。其他方面什么都不会发生。