2013-02-01 81 views
1

我使用ASP.NET验证控件验证表单上的字段,并且需要将焦点设置在页面内的特定锚点上,但它会一直移动到页面的顶部尽管SetFocusOnError设置为True。我尝试添加CustomValidatorClientValidationFunction,但它在验证之前运行,因此回到页面的顶部。验证控件 - 将焦点设置在特定的锚点上

我也试过这样:

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 - 点击提交第一次移动到页面的顶部,第二次,它将焦点放在字段上。
  • 铬 - 从来没有工作。

回答

相关问题