我试图在asp.net中的页面加载上设置焦点文本框,如下所示
protected void Page_Load(object sender, EventArgs e)
{
try
{
if (!IsPostBack)
{
// fillUnitType();
//
fillLastCode();
txt_Grn_Date.Text = System.DateTime.Now.ToString("dd-MM-yyyy");
setinitialrow_lvl();
txt_Po_No.Focus();
}
}
catch (Exception ex)
{
lblMessage.Text = ex.Message;
}
}
但文本框没有集中精力。我错过了什么我用过更新面板是因为那个。?或者我的CSS有点错误。
答案 0 :(得分:1)
在javascript中试试这个
<script language=javascript>
function fnLoad(){
document.getElementById("<%= txt_Po_No.ClientID %>").focus();
}
</script>
在身体的“fnLoad
”事件中调用“onLoad
()”函数。
您需要在body标签中添加此功能:喜欢
<body onload="fnLoad()">........</body>
<强>更新强>
尝试另一种方式
<script language=javascript>
$(document).ready(function(){ document.getElementById("<%= txt_Po_No.ClientID %>").focus();})
</script>
或
<script language=javascript>
$(window).load(function(){ document.getElementById("<%= txt_Po_No.ClientID %>").focus();})
</script>
答案 1 :(得分:1)
在代码隐藏中编写以下函数,并为每个控件调用此函数
private void Set_Focus(string controlname)
{
string strScript;
strScript = "<script language=javascript> document.all('" + controlname + "').focus() </script>";
RegisterStartupScript("focus", strScript);
}
设置
tapindex = 0
TextBox1.Focus();
或
textBox1.Select();
或
protected override void OnShown(EventArgs e)
{
textBox1.Focus();
base.OnShown(e);
}
或
setTimeout("myFocusFunction()", 500);
function myFocusFunction(){
$("#myTextBoxID").focus();
}
答案 2 :(得分:1)
我已尝试使用其中的updatepanel和textbox。
<强>代码隐藏强>
<强>的.aspx 强>
<强>输出强>
答案 3 :(得分:0)
试试这段代码..
string jsCode= "<script language=javascript>document.getElementById('<%= TEXTBOX.ClientID%>').focus();</script>";
ClientScript.RegisterClientScriptBlock(GetType(), "txtbox",jsCode, false);