












asp.net(c#)如何在页面加载时给文本控件添加焦点
this.Page.RegisterStartupScript("","<script>document.forms(0).txtFamily.focus(); document.forms(0).txtFamily.select();</script>");
如何设置 asp.net 页面中的回车默认按钮
logonidtextbox.attributes["onkeydown"]="if(event.keycode==13){document.all.logonpasswordtextbox.focus(); return false;}";
logonpasswordtextbox.attributes["onkeydown"]="if(event.keycode==13){document.all.buttonlogon.click(); return false;}";
或者文本框的 chenage 事件中添加代码
页面中的回车都转成 Tab
<script language="javascript" event="onkeydown" for="document">
if(event.keyCode==13 && event.srcElement.type!='button' && event.srcElement.type!='submit' && event.srcElement.type!='reset' && event.srcElement.type!='')
event.keyCode=9;
</script>
在 ASP.NET 中,如果同一页面有多个文本框,在每个文本框按“回车”按钮,将会默认响应第一个 Button 的 Click 事件,怎样能随意的按回车键而不引发意外的响应或者怎样在不同的地方按回车键得到不同的响应
二、在不同的地方按回车键得到不同的响应 如果同一页面上有多个文本框(TextBox),每个文本框对应不同提交按钮(Button),如下列“登录”的页面里,有“输入邮箱号”和“输入帐号”两个文本框和“进入邮箱”、“进入社区”两个按钮。
实现步骤如下:
1。建立页面和代码文件(此步骤不详细介绍)
2。给 form 加上 onkeydown="keydown()"以屏蔽掉页面的回车响应
keydown()的代码如下:
function keydown() { }
3。给“输入邮箱号”的文本框加上 onkeydown="mail();"让它响应“进入邮箱”按钮事件
mail()代码如下:
function mail()
{
if(event.keyCode==13)
{
document.all.MAIL.click();
alert('mail');
}
}
4。给“输入帐号”的文本框加上 onkeydown="bbs();"让它响应“进入社区”按钮事件
bbs()代码如下:
function bbs()
{
if(event.keyCode==13)
{
document.all.BBS.click();
alert('bbs');
}
}
按回车执行页面上的指定按钮事件
ASP.NET 中让同一页面不同的文本框在按回车时响应不同的提交按扭的事件
1、第一步:先创建以下javascript,如下:
<script language="javascript">
<!--
function KeyDown(){
if(event.keyCode==13) {
//在页面form中,按回车不触发事件
return false;
}
}
function doButton(){
if(event.keyCode==13) {
//btSubmit指对应的提交按扭的id名称
document.all.btSubmit.click();
}
}
//-->
</script>
2、第二步:在 FORM 中加入“onKeyDown”标签,如下:
<form id="Form1" method="post" runat="server" onKeyDown="return KeyDown()">
</form>
3、第三步:在所要按回车的文本框上加入“onKeyDown”标签,如下:
<asp:TextBox id="TextBox1" runat="server" onKeyDown="doButton()"></asp:TextBox>
这是提交按扭:
<asp:Button id="btSubmit" runat="server" Text=" 提交 "></asp:Button>
以上仅供参考
呵呵,经自己亲自试演,如下可行,要先给按钮获得焦点
this.TextBox1.Attributes.Add("onkeypress","if(event.keyCode==13){document.all.btnGOTO.focus();document.all.btnGOTO.click(); return false;}");
this.TextBox1.Attributes.Add("onkeydown","if(event.keyCode==13){document.all.btnGOTO.focus();document.all.btnGOTO.click(); return false;}");
在一个页面上存在多个按钮,有的时候希望按回车直接实现点击某按钮的效果,解决方法如下:
<script language="javascript">
function document.onkeydown()
{
var e=event.srcElement;
if(event.keyCode==13)
{
document.getElementById("需要点击的那个按钮的id").click();
return false;
}
}
</script>
如果页面上有多行文本框,在多行文本框内回车仅仅想实现换行而不是提交表单这么修改
if(e!=document.getElementById("多行文本框的id")&&event.keyCode== 13)
一、在页面任意的地方按回车键都不引发响应 如果整个页面没有需要设置回车提交的,希望在页面任意的地方按回车键都不引发响应,可以将全页面的回车通通转为 Tab,方法是在文件头部加上如下代码:
<script language="javascript" event="onkeydown" for="document">
if(event.keyCode==13)
event.keyCode=9;
</script>
----------------------------------------------------------------------------------------------------
按扭上的事件我会写:
bt_Click+=new EventHandler(bt_OnClick);
private void bt_OnClick(Object sender,EventArgs e){
//****
}
可是TextBox对象的事件怎么写?
private void tb_OnKeyDown(Object sender,KeyEventArgs e){
if(e.KeyCode.ToString()=="Enter"){
//***
//怎么写?难道要把代码复制一次才可以吗?
//***
}
}
--------------------------------------------------------------------------------------------------------------
回车光标定位到下一个文本框:
TextBox.Attributes.Add("onkeydown","if(event.keyCode==13)event.keyCode=9;");
onkeydown= "if(event.keyCode==13)event.keyCode=9 "
13:回车键
9:Tab键
Page_Load中设置:
textbox.Attribute[ "onkeyup "]= "javascript:if (event.keycode==13) xxx.focus(); "
例:
<script language=javascript>
function document_onkeydown() {
if (event.keyCode==13) //如果回车
{
event.returnValue=false
}
}
</script>
<form id="Form1" method="post" runat="server" onkeydown="return document_onkeydown()">
取消 form的回车提交
------------------------------------------------------------------------------------------
如果你的textbox是放在某个form里面的话,
那么把这个form的keypreview设成true,
然后重载form的keypress,keydown,keyup三个响应函数,
在这三个响应函数里面检查是不是enter键,
如果是,就把事件注销,注销的方法是设置event的isHandled属性。
---------------------------------------------------------------------------------------------------------------------------------------
屏蔽Button按钮对Enter回车键的响应 及实现Enter->Tab效果
案例如下:
一般情况下
当一个页面有TextBox以及Button的时候
当光标停留在TextBox上 此时按Enter键 回车
就会发现光标将焦点停留在Button上
并且触发了Button的按钮事件
本例实现如下效果
0.一个包含[姓名TextBox1]和[备注TextBox2]以及[确定Button按钮]的页面
1.屏蔽按钮对回车键的响应 而只响应鼠标的点击
2.以及实现Enter键->Tab键的转换
即TextBox1非空时 按回车键 光标转到TextBox2
当TextBox2非空时 按回车键 光标转到Button
当光标停留在Button上时 按回车键 光标转到TextBox1
---------------------------------------
相关代码示例如下:

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

后台代码:
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.TextBox1.Attributes.Add("onkeydown", "TextBox1onKeyDown();");
this.TextBox2.Attributes.Add("onkeydown", "TextBox2onKeyDown();");
this.Button1.Attributes.Add("onkeydown", "Button1onKeyDown();");
this.Button1.Attributes.Add("onclick", "btnOnClick();");
this.TextBox1.Focus();
}
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Write("onclickServer");
}
}
----------------------------------------------------------------------------------------------------------------------------------------
{
document.onkeypress=function(){
if(event.keyCode==13)
return false;
}
}
如果没有加载MicrosoftAjax框架,请添加document的onload事件。欢迎提出疑问,感谢!
上面的也禁止了文本区域的回车,最好用下面的方法
return false;
}
然后利用__doPostBack()提交