web控件的事件中出现的问题。

zmpanda 2003-08-30 09:45:20
为什么在用回车键处理textbox的TextBox_TextChanged的事件时,同时也处理的button的Button1_Click的事件,可能是什么地方出现了问题;或者就是这么处理。
...全文
28 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
gurucode 2003-09-22
  • 打赏
  • 举报
回复
<asp:TextBox id=txt1 runat=server OnTextChanged="Changed" AutoPostBack="true"/>

然后
void Changed()
{
代码。。。
}
radeonle 2003-09-22
  • 打赏
  • 举报
回复
<asp:TextBox id=txt1 runat=server OnTextChanged="Changed" AutoPostBack="true"/>

然后
void Changed()
{
代码。。。
}
radeonle 2003-09-18
  • 打赏
  • 举报
回复
up
zmpanda 2003-08-30
  • 打赏
  • 举报
回复
那如果按键时imagebutton是不是同样处理,谢谢你的指点。
saucer 2003-08-30
  • 打赏
  • 举报
回复
<form runat=server>
<asp:TextBox id=txt1 runat=server OnTextChanged="txt_Changed" AutoPostBack="true"/>
<asp:TextBox id=txt2 runat=server OnTextChanged="txt_Changed" AutoPostBack="true"/>
<asp:Button id=btn runat=server Text="submit" OnClick="btn_Clicked" />
</form>
<script language="C#" runat="server">
void txt_Changed(Object sender, EventArgs e)
{
TextBox tb = (TextBox)sender;
Response.Write(tb.ID + " textchange is called<BR>");
}
void btn_Clicked(Object o, EventArgs e)
{
Response.Write("button is clicked");
}
</script>

<script language="javascript">
function document.onkeydown()
{
if (event.keyCode == 13)
{
var e = event.srcElement;
if (e.tagName == "INPUT" && e.type == "text")
event.keyCode = 9; //use AutoPostBack=true to trigger TextChanged
/*else
{
event.cancelBubble = true;
event.returnValue = false;
}*/
}
}
</script>
zmpanda 2003-08-30
  • 打赏
  • 举报
回复
不行呀,连textbox_changed事件也不执行了。
kzhonghua 2003-08-30
  • 打赏
  • 举报
回复
你的Button是不是设成确认按钮了
saucer 2003-08-30
  • 打赏
  • 举报
回复
有可能是,你的回车启动了按钮造成POSTBACK,同时因为你的TEXTBOX改变了,所以调用
TextBox_TextChanged在先,调用Button1_Click在后,试试上面的JAVASCRIPT或

<script language="javascript">
function document.onkeydown()
{
if (event.keyCode == 13)
{
var e = event.srcElement;
if (e.tagName == "INPUT" && e.type == "text")
event.keyCode = 9; //use AutoPostBack=true to trigger TextChanged
else
{
//disallow 回车 to trigger button
event.cancelBubble = true;
event.returnValue = false;
}
}
}
</script>

panyee 2003-08-30
  • 打赏
  • 举报
回复
执行两事件时, 一般会从Page_Load里走两遍
zmpanda 2003-08-30
  • 打赏
  • 举报
回复
代码没有什么特殊的地方,可能是什么原因出现这种问题。
cnhgj 2003-08-30
  • 打赏
  • 举报
回复
贴代码出来看看!
saucer 2003-08-30
  • 打赏
  • 举报
回复
or add this to your code

<script language="javascript">
function document.onkeydown()
{
if (event.keyCode == 13)
{
var e = event.srcElement;
if (e.tagName == "INPUT" && e.type == "text")
event.keyCode = 9;
}
}
</script>
saucer 2003-08-30
  • 打赏
  • 举报
回复
贴出编码来?你在textbox里用AutoPostBack=true了么?或者有什么HTML控件的Name跟你按钮的ID相同?

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧