Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 自动回发未正确设置焦点_C#_Javascript_Asp.net_Telerik - Fatal编程技术网

C# 自动回发未正确设置焦点

C# 自动回发未正确设置焦点,c#,javascript,asp.net,telerik,C#,Javascript,Asp.net,Telerik,我有一个页面,当自动或部分回发发生时,焦点设置为地址栏,而不是下一个控件。有趣的是,当我在RadScriptBlock中放置警报时,单击OK后,焦点将转到正确的控件-或者-如果我放置了无效的位置,焦点将返回到Exploation控件&当第二次输入正确的位置时,tab order/focus命令将正常工作(参见下面的代码) 上面有这个 <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <Aja

我有一个页面,当自动或部分回发发生时,焦点设置为地址栏,而不是下一个控件。有趣的是,当我在RadScriptBlock中放置警报时,单击OK后,焦点将转到正确的控件-或者-如果我放置了无效的位置,焦点将返回到Exploation控件&当第二次输入正确的位置时,tab order/focus命令将正常工作(参见下面的代码)

上面有这个

    <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
    <AjaxSettings>
        <telerik:AjaxSetting AjaxControlID="RadAjaxPanel1">
            <UpdatedControls>
                <telerik:AjaxUpdatedControl ControlID="RadAjaxPanel1" LoadingPanelID="RadAjaxLoadingPanel1" />
            </UpdatedControls>
        </telerik:AjaxSetting>
        <telerik:AjaxSetting EventName="OnTextChanged" AjaxControlID="RadNumericTextBox_GLm">
            <UpdatedControls>
                <telerik:AjaxUpdatedControl ControlID="RadNumericTextBox_GLm" LoadingPanelID="RadAjaxLoadingPanel1" />
                <telerik:AjaxUpdatedControl ControlID="lblGlCodeErrorMessage" LoadingPanelID="RadAjaxLoadingPanel1" />
            </UpdatedControls>
        </telerik:AjaxSetting>
        <telerik:AjaxSetting EventName="OnTextChanged" AjaxControlID="RadNumericTextBox_ExpLocation">
            <UpdatedControls>
               <telerik:AjaxUpdatedControl ControlID="lblGlCodeErrorMessage" LoadingPanelID="RadAjaxLoadingPanel1" />
                <telerik:AjaxUpdatedControl ControlID="RadNumericTextBox_ExpLocation" LoadingPanelID="RadAjaxLoadingPanel1" />
            </UpdatedControls>
        </telerik:AjaxSetting>
    </AjaxSettings>
</telerik:RadAjaxManager>

您是否尝试过使用RadAjaxManager的FocusControl方法,或以下技术之一:

尝试使用ScriptManager方法设置焦点,并禁用ajax,以排除异常是否与ajaxification相关。使用这两种技术,可以作为您的参考点顺便说一句

<telerik:RadNumericTextBox ID="RadNumericTextBox_ExpLocation" runat="server" Width="20px" AutoPostBack="true"
MaxLength="3" NumberFormat-AllowRounding="False" Type="Number" NumberFormat-KeepTrailingZerosOnFocus="True"
IncrementSettings-InterceptMouseWheel="false" OnTextChanged="LocationCheck_OnTextChanged" TabIndex="101">
<NumberFormat DecimalDigits="0" GroupSeparator="" AllowRounding="false" KeepNotRoundedValue="false" />
    protected void LocationCheck_OnTextChanged(object sender, System.EventArgs e)
{
    var cmdText = "SELECT LMLOC FROM DBMOTO..XALOCNP WHERE  " +
            " LMLOC = @ExpLocation ";
        using (var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["MAINConnectionString"].ToString()))
        using (var cmd = new SqlCommand(cmdText, conn))
        {
            cmd.Parameters.Add(new SqlParameter("@ExpLocation", RadNumericTextBox_ExpLocation.Text));
            conn.Open();
            SqlDataReader dr = cmd.ExecuteReader();
            if (dr.HasRows)
            {
                Session["ValidGL"] = false;
                lblGlCodeErrorMessage.Visible = false;
                lblGlCodeErrorMessage.Text = "Good Location";
                btnAddItem.Enabled = false;
                btnDone.Enabled = false;
                RadNumericTextBox_GLm.Focus();
            }
            else
            {
                lblGlCodeErrorMessage.Visible = true;
                lblGlCodeErrorMessage.Text = "Invalid/Inactive Location";
                btnAddItem.Enabled = false;
                btnDone.Enabled = false;
                RadNumericTextBox_ExpLocation.Focus();
            }
        }
}