1
我使用ASP.NET验证控件验证表单上的字段,并且需要将焦点设置在页面内的特定锚点上,但它会一直移动到页面的顶部尽管SetFocusOnError
设置为True。我尝试添加CustomValidator
与ClientValidationFunction
,但它在验证之前运行,因此回到页面的顶部。验证控件 - 将焦点设置在特定的锚点上
我也试过这样:
Set focus to validation summary?
但是第一链接不再可用,第二个就是不工作(这就是为什么的答案应该是自包含!)。
这里是我的代码示例:
<asp:ValidationSummary ID="ValidationSummary1" ClientIDMode="Static"
runat="server" HeaderText="[custom message in my native language]"
ValidationGroup="Valida" CssClass="msg_erro" />
<asp:RequiredFieldValidator ID="vldNome" runat="server"
ControlToValidate="txtNome" ValidationGroup="Valida" Display="Dynamic"
ErrorMessage="blah blah blah" SetFocusOnError="True" Text="*" />
//a bunch o others validatiors...
<asp:ImageButton runat="Server"
ImageUrl="~/img/anuncie/btn-cadastrar.png" ID="btnEnviar"
ValidationGroup="Valida" CssClass="btn-cadastrar" />
正如我所说的,我需要的重点是在一个特定的锚,但设置重点ValidationSummary
或任何领域将是不错的好,因为我的字段远离页面的顶部。
谢谢。
UPDATE
不同的行为在不同的浏览器:
- IE - 重点是在域设置正确点击提交时(取决于IE版本)
- FF - 点击提交第一次移动到页面的顶部,第二次,它将焦点放在字段上。
- 铬 - 从来没有工作。