我正在使用单轨和 jQuery 验证。问题是当您使用 FormHelpers 时,例如:
$FormHelper.TextField("user.username")
它生成以下html:
<input type="text" value="" name="user.username" id="user_username">
它还生成以下 jQuery 验证规则(通过 activerecord 的 ValidateRegExp 属性):
"user.username":{ required: "This is a required field" , regExp: "Invalid" }
问题是自动生成的 id 有一个下划线而不是句点,因此 jQuery 在将焦点设置在无效字段上时找不到它。
这似乎是 monorail、activerecord 和 jQuery 集成中的一个固有问题。人们如何绕过这个问题?在某些情况下,您可以手动创建 html 并确保 id 和 form 属性相同,但在许多情况下,您需要使用 FormHelpers,因为在编辑表单时,除非您使用我发现的这些帮助器,否则不会填充值.