我有一个包含2个文本框的表单。 PageName和RouteToken。 RouteToken针对数据库进行远程验证。它工作得很好,我在PageName上有一个模糊功能,将值“复制”到RouteToken。这工作直到我,两个文本框都填充相同的信息,转到PageName并删除几个字符然后标签点击某处。随机它可以工作,在RouteToken中随机删除几个字符,具体取决于我的速度或速度。
我已将此(voodooo)添加到我的编辑页面以“镜像”事物并使页面名称网址友好:
$("#PageName").change(function (e)
{
e.preventDefault();
var routeToken = parseUrl($("#PageName").val());
$("#RouteToken").val(routeToken);
});
在视图中:
@Html.EditorFor(model => model.PageName)
@Html.EditorFor(model => model.RouteToken)
@Html.ValidationMessageFor(model => model.RouteToken)
远程检查:
public JsonResult CheckRouteToken(Page page)
{
var r = _contentRep.GetRoute(page.RouteToken);
bool isValid = ((r == null || page.PageID == r.PageID);
return Json(isValid, JsonRequestBehavior.AllowGet);
}
是否有某种方法可以修改它,以便我的功能和验证可以一起工作?当pageName文本框失去焦点时,我宁愿以某种方式“on blur”使routeToken填充一些服务器端。或者对我的js进行一些修改,以便它可以工作。
任何指针,想法或修改?