求大神帮忙onclientclick调onclick问题

xiulijing19870911 2013-01-25 02:33:05
在网页前台有两个按钮,在其中一个按钮的onclientclick中通过document调用另一个按钮的click事件,与直接点击另一个按钮效果不一样呢。
菜鸟一枚,求高手指点!!!

新建一个Web窗体
前台代码如下

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"
ViewStateMode="Disabled" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript" language="javascript">
function window.onload() {
// alert('111');
alert(document.getElementById("lbl_red").innerText);
}
function RedColor() {
window.document.getElementById("Button1").click();
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="btn_change" runat="server" Text="变色" OnClientClick="RedColor();" />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
</div>
<div>
<asp:Label ID="lbl_red" runat="server" Width="100px" ViewStateMode="Disabled"></asp:Label>
<br />
<asp:Label ID="lbl_green" runat="server" Text="Green" Width="100px"></asp:Label>
<br />
<asp:Label ID="lbl_blue" runat="server" Text="Blue" Width="100px"></asp:Label>
</div>
</form>
</body>
</html>

后台代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}
protected void RedColor(object sender, EventArgs e)
{

}
protected void Button1_Click(object sender, EventArgs e)
{
this.lbl_red.Text = "***";
// ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>alert('123');alert(document.getElementById('lbl_red').innerText);</script>");
}
protected void Button4_Click(object sender, EventArgs e)
{
this.lbl_red.Text = "Red";
this.lbl_green.Text = "Green";
this.lbl_blue.Text = "Blue";
}
protected void btn_change_Click(object sender, EventArgs e)
{

}
}

...全文
65 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
风一样的大叔 2013-01-26
  • 打赏
  • 举报
回复
在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为.例如,默认情况下点击一个<a>元素,页面会跳转到该元素href属性指定的页. Return False 就相当于终止符,Return True 就相当于执行符。 在js中return false的作用一般是用来取消默认动作的。比如你单击一个链接除了触发你的 onclick时间(如果你指定的话)以外还要触发一个默认事件就是执行页面的跳转。所以如果 你想取消对象的默认动作就可以return false。
xiulijing19870911 2013-01-25
  • 打赏
  • 举报
回复
行了,1楼牛人,求解释,为什么啊???
gxingmin 2013-01-25
  • 打赏
  • 举报
回复
加上红色部分试试 OnClientClick="RedColor();return false;"

62,041

社区成员

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

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

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

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