标题:为何在一个页面上将光标放到任何一个TextBox控件上然后按回车键均会触发同一 ...
取消只看楼主
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
结帖率:100%
 问题点数:0 回复次数:5 
为何在一个页面上将光标放到任何一个TextBox控件上然后按回车键均会触发同一个Butt
为何在一个页面上将光标放到任何一个TextBox控件上然后按回车键均会触发同一个Button控件的Click事件?

以下是该页面的代码:
protected void Page_Load(object sender, EventArgs e)
{
if (Session["logon"] != null)
{
if (Session["logon"].ToString() != "logonSuccess")
{ Response.Redirect("login.aspx"); }
}
else
{
Response.Redirect("login.aspx");
}
if (!IsPostBack)
{
TextBox2.Text = Session["MyHtflPath"].ToString();
//TextBox7.Text = Session["MyHtflId"].ToString();
TextBox3.Text = Session["MyGcxmPath"].ToString();
//TextBox6.Text = Session["GcxmId"].ToString();
}
}
protected void Button2_Click(object sender, EventArgs e) //关闭窗口
{
{ Response.Write("<script>close()</script>"); }
}
搜索更多相关主题的帖子: TextBox控件 页面上将 Butt 回车键 光标 
2007-04-17 09:51
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
得分:0 
回复:(冰镇柠檬汁儿)因为页面都有第一个按钮控件,...
这样的啊……
但我的这个Button 按钮控件 是第二个 Button2 啊

我是2.0超级菜鸟,请多多教导!
2007-04-17 10:13
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
得分:0 
晕!还有 程序默认的第一个按钮控件……

经测试,与按钮控件的位置有关……

我是2.0超级菜鸟,请多多教导!
2007-04-17 10:27
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
得分:0 
以下是引用cyyu_ryh在2007-4-17 10:24:45的发言:
改红色的地方

<script language="javascript" type="text/javascript">
function document.onkeydown()
{
if(event.keyCode==13)
{
document.getElementById("Button1").click();
return false;
}
}
</script>

谢谢!上述代码是实现在页面上按下回车键后执行一个按钮的单击带击事件的。我只是想在页面上按下回车什么变化也没有,看来是要设置一个什么事件也没有的而且是隐藏了的按钮控件。
这样看来,本想将页面上的按钮控件,根据用户的不同权限来显示或隐藏这些按钮控件的想法是存在巨大漏洞的。即使是没有权限的用户进入了界面,而界面中将该用户没有操作权限的按钮隐藏了,用户在页面上多按几下回车键岂不是会触发系统默认的第一个按钮而导致权限被破解???


我是2.0超级菜鸟,请多多教导!
2007-04-17 10:41
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
得分:0 
晕!即使用了以下代码,如果Button1的Visible的属性设置为 false ,也不会执行Button1的click事件,而会执行系统默认的第一个按钮控件的click事件。
<script language="javascript" type="text/javascript">
function document.onkeydown()
{
if(event.keyCode==13)
{
document.getElementById("Button1").click();
return false;
}
}
</script>

我是2.0超级菜鸟,请多多教导!
2007-04-17 10:59
foshan
Rank: 1
等 级:新手上路
威 望:2
帖 子:605
专家分:0
注 册:2006-3-1
得分:0 
好像将页面中所有的按钮控件的 UseSubmitBehavior属性设置为false就可避免在页面上按下回车键触发默认的按钮的click事件。
还有一个办法,在aspx中增加红色部分的代码:<form id="Form1" method="post" runat="server" onkeydown="if(event.keyCode==13){event.returnValue=null;}">
大家有何看法?

[此贴子已经被作者于2007-4-17 11:37:49编辑过]


我是2.0超级菜鸟,请多多教导!
2007-04-17 11:19



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-132478-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.345357 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved