如何在HTML的控件ONCLICK中调用服务器端CLICK事件,急~~~

cuilu 2005-03-18 03:24:22
在HTML中的BUTTON的ONCLICK中如何调用LOGIN.ASPX.CS的BUTTON_CLICK事件,这能实现吗,请高手们指教,谢谢~~~
...全文
445 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
zouchunhui 2005-03-21
  • 打赏
  • 举报
回复
看了一下,真的行啊,一直以为客户端不能调用服务器端的事件,现在看来用这个方法真爽
HONGDUN 2005-03-21
  • 打赏
  • 举报
回复
<asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 457px; POSITION: absolute; TOP: 314px" runat="server" Text="直接进入" OnClick="__doPostback('Button1','');"></asp:Button>

这里写的button不是html控件呀,而是服务端控件。而服务端控件是没有onclick事作的。必须在.cs文件里为它加上这个事件,如button1.Attribute.Add("onclick","return __doPostback('Button1','')");
brando_beat 2005-03-18
  • 打赏
  • 举报
回复
OnClick="javascript:__doPostback
cuilu 2005-03-18
  • 打赏
  • 举报
回复
还是错啊
<asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 457px; POSITION: absolute; TOP: 314px" runat="server" Text="直接进入" OnClick="__doPostback('Button1','');"></asp:Button>
beibeilong 2005-03-18
  • 打赏
  • 举报
回复
可以写成 onclick = "__doPostback('Button1','');"
注意,要写2个下划线
前提是你的button的id是button1
cuilu 2005-03-18
  • 打赏
  • 举报
回复
我是双击BUTTON1在.cs文件中写的
cuilu 2005-03-18
  • 打赏
  • 举报
回复
你是说BUTTON1_CLICK事件也要写在HTML中?不能写在.CS文件中?
Englishgenius 2005-03-18
  • 打赏
  • 举报
回复
晕阿,
在HTML中的BUTTON的ONCLICK中,也就是脚本事件里写。你写到哪去了?
cuilu 2005-03-18
  • 打赏
  • 举报
回复
<asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 457px; POSITION: absolute; TOP:314px" runat="server"Text="直接进入" OnClick="document.all('Button1').click();"></asp:Button>
这样写,可还是报错

在编译向该请求提供服务所需资源的过程中出现错误。

BUTTON1_CLICK是在.cs文件中写的

Englishgenius 2005-03-18
  • 打赏
  • 举报
回复
Button1就是服务器端按钮的id
在你的客户段按钮的单机事件里,按上面方法写就可以了
cuilu 2005-03-18
  • 打赏
  • 举报
回复
什么意思,怎么写?
Englishgenius 2005-03-18
  • 打赏
  • 举报
回复
或者
_doPostBack('Button1','')
Englishgenius 2005-03-18
  • 打赏
  • 举报
回复
document.all('Button1').click();
cuilu 2005-03-18
  • 打赏
  • 举报
回复
那我把BUTTON_CLICK也改成PUBLIC,也不行,
是不是控件的事件在客户端是不用调用 的

我是这样写的
<asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 457px; POSITION: absolute; TOP: 314px" runat="server"Text="直接进入" OnClick="<%# Button1_Click(sender,e)%>"></asp:Button>

public void Button1_Click(object sender, System.EventArgs e)
{
this.Button1.Text="sdfas";
}
但是报错
zhangjidong 2005-03-18
  • 打赏
  • 举报
回复
%# getlength1(Convert.ToInt32(DataBinder.Eval(Container.DataItem,"Count_Count").ToString())) %>

DataBinder.Eval(Container.DataItem,"Count_Count")是把数据源的"Count_Count"是目标项所邦定数据源的字段
DataBinder.Eval(Container.DataItem,"Count_Count").ToString()则是要把它转化为字符串
Convert.ToInt32(DataBinder.Eval(Container.DataItem,"Count_Count").ToString())则是把这个字符串转换为Int32型
<%#getlength1()%>是服务器端的方法,显然是处理一个Int32的数据得到一个表示宽度的值,所以就写成了
%# getlength1(Convert.ToInt32(DataBinder.Eval(Container.DataItem,"Count_Count").ToString())) %>

可以通过例如来访问服务器端方法
<td>
<%=GetTitlePic("本周热门新闻")%>
</td>
但GetTitlePic要声明成 public 的
如:

public string GetTitlePic(string temp)
{
return temp;
}
cuilu 2005-03-18
  • 打赏
  • 举报
回复
知道写吗?
能实现吗?
谁帮帮我
zlrex 2005-03-18
  • 打赏
  • 举报
回复
你用的这个是可以的。
我也常常用这个。
我用这个的情况是这样的:
填写一个类似DataGrid这样的可绑定数据控件。
如果该列是使用模板的,就可以用这样的:DataBinder.Eval(Container.DataItem,"Count_Count")
我举个我正在编的东西吧。
我在aspx文件上是这样写的:
<asp:datagrid id="dgTaskStatus" AutoGenerateColumns="False" runat="server">
<Columns>
<asp:TemplateColumn HeaderText="任务状态">
<ItemTemplate>
<%# StatusImg(DataBinder.Eval(Container.DataItem,"TaskStatus").ToString())%>
</ItemTemplate>
</asp:TemplateColumn>
</asp:datagrid>
//以上与你程序相对应的就是那个<%# StatusImg(DataBinder.Eval(Container.DataItem,"TaskStatus").ToString())%>

然后我在cs文件中写了这个:
public string StatusImg(string StatusID)
{
return "<img src='images/icon_taskstatus"+StatusID+".gif'>";
}

那个我在Page_Load中对该DataGrid绑定时,就会自动调用StatusImg(string StatusID)这个函数。

至于你的第一个问题:如果用JS脚本调用后台代码。我也看见过了,但没有使用过。
cuilu 2005-03-18
  • 打赏
  • 举报
回复
getlenth1就是服务器端的方法,可以调用,那我调用服务器端的BUTTON_CLICK为什么不行呢
F9 2005-03-18
  • 打赏
  • 举报
回复
<%# getlength1(Convert.ToInt32(DataBinder.Eval(Container.DataItem,"Count_Count").ToString())) %>这一段已经是服务器端的代码了,在服务器端运行的绑定数据
cuilu 2005-03-18
  • 打赏
  • 举报
回复
但是我看到过有人是这样用的
<td bgcolor="#efefef" width=<%# getlength1(Convert.ToInt32(DataBinder.Eval(Container.DataItem,"Count_Count").ToString())) %>></td>

getlength1就是用服务器端的.cs文件中定义的 这是怎么回事
加载更多回复(2)

62,041

社区成员

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

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

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

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