ASP超链接控制使用href =“#”和验证

时间:2010-12-27 19:44:11

标签: .net asp.net html visual-studio

我在使用asp超链接控件和“#”href值时遇到问题。我不希望链接离开当前页面或重新加载它,但我希望链接导致验证发生在特定的验证组。

以下行不会触发验证。

<asp:HyperLink id="next" runat="server" CausesValidation="true" ValidationGroup="SideRifStepOne" href="#">Next Step</asp:HyperLink>

如果我使用相同的属性进行验证工作,但重新加载页面。有关触发验证而不重新加载页面的建议吗?

由于

3 个答案:

答案 0 :(得分:3)

另一个解决方案是手动调用Page_ClientValidate():

<asp:HyperLink id="next" runat="server" href="javascript:doValidate()">Next Step</asp:HyperLink> 
                <script type="text/javascript">
                    function doValidate()
                    {
                        Page_ClientValidate();
                    }
                </script>

答案 1 :(得分:1)

你试过使用链接按钮吗?你可以设置onclientclick =“return false;”防止回发,它应该导致验证

答案 2 :(得分:0)

您可以将EnableClientScript="true"添加到验证控件中。通过这样做,验证将在回发发生之前在javascript中执行。