在同一页面中提交后,将焦点从代码隐藏设置为元素

本文关键字:代码 焦点 隐藏 设置 元素 一页 提交 | 更新日期: 2023-09-27 18:01:12

我想在用户单击Submit后将焦点设置为一个元素(一个按钮(,但焦点不在新页面上,而是在同一页面上。发生的事情是,当他们点击提交时,我正在评估一些条件。。如果其中一个被满足,我会用其他方式将它们发送回同一页面(或不重定向(,但它仍然会进行postback,因此,当它在提交后再次进行postback时,我想将重点放在这个项目上。。我该怎么做?

在同一页面中提交后,将焦点从代码隐藏设置为元素

所以您想将页面的焦点设置为页面上的WebControl?即CCD_ 1?

您可以使用ControlId.Focus()

编辑

如果你谈论的是回发后的滚动位置,那么你可以试试这个

<%@ Page MaintainScrollPositionOnPostback="true" %>

现在我以前从未使用过,也从未尝试过,所以不确定它是否有效。

尽管你的问题对我来说似乎不太清楚,但我假设你想将焦点设置为asp.net控件,这样你就可以进行

protected void Page_Load(object sender, EventArgs e)
    {
        if(Page.IsPostBack)
        {
           if(vartemp === vartemp2) //assuming that you want to set focus when specific condition meets
             myButton1.Focus();
        }
    }

使用隐藏字段,并在回发之前使用要验证的控件的controlId设置其值。在pageload事件中,您可以检查隐藏字段的值并聚焦该控件。

或者,您可以使用validationcontrols进行验证。