0

我正在使用单轨和 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,因为在编辑表单时,除非您使用我发现的这些帮助器,否则不会填充值.

4

1 回答 1

0

助手只是字符串连接的包装器。例如,对于您要填充的值,您可以<input type="text" .... value="<%=user.username%>" />

至于 jQuery 验证规则,AFAIK 它确实需要通过 name 属性而不是 id 属性来指定表单字段

于 2010-08-16T13:31:27.763 回答