【求助】文本页面中,焦点的控制
要实现的要求,
第一步,TextBox内输入文本后,回车,可以执行 Button1的Click事件
第二步,Button1的Click事件完成后,Web的焦点反馈TextBox
目前,第一步已经实现
实现原理,TextBox内回车的时候,焦点设定为Button1
问题,第二步怎么实现
不知道,请各位帮忙,感谢
-------------------------
第一步实现的具体方法
1:加javascript语句如下
<script type ="text/javascript" >
function SetKeyFocus(str1)
{
if(event.keyCode==13)
{
var a;
a=str1;
eval("window.document.form1."+a+".focus();");
}
}
</script>
2:TextBox控件事件增加如下
<asp:TextBox ID="tbAppName" runat="server" onkeydown="SetKeyFocus('btnAppAdd');" ></asp:TextBox>
------解决方案--------------------
Button1是个服务器控件吗?
如果是,那么在
Button1的Click事件 里面,
tbAppName.Focus();即可将光标移动到tbAppName上
如果是html button 那么onclick时间里面 "document.getElementById('tbAppName').focus()"
即可
------解决方案--------------------
你要是在服务器控件里实现,因为Button要提交的,可以这样写
protected void Button1_Click(object sender, EventArgs e)
{
form1.DefaultFocus = "tbAppName";
}
例子
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
form1.DefaultFocus = "TextBox2";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="点击提交,将焦点定位在 TextBox2 上" OnClick="Button1_Click"
Style="height: 21px" />
</form>
</body>
</html>
------解决方案--------------------
直接拷贝执行这个例子
你就明白了
HTML code
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
form1.DefaultFocus = "TextBox2";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script>alert("这个只弹出一次,如果弹出多次,页面就是刷新了。")</script>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
TextBox1:<asp:TextBox ID="TextBox1" runat="server">
</asp:TextBox>
<br />
TextBox2:<asp:TextBox ID="TextBox2" runat="server">
</asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="点击提交,将焦点定位在 TextBox2 上" OnClick="Button1_Click"
Style="height: 21px" />
</ContentTempla