请问Javascript事件能激活asp.net事件吗?例如按钮的click事件.
请给个例子,谢谢!!! 问题点数:30、回复次数:3Top
1 楼ldljlq(越搞越不明白)回复于 2005-01-02 22:05:02 得分 15
能,不过必须要了解asp.net的事件触发机制。
例如:
<a id="MyDataGrid__ctl3_lbtnV1" onClick="return confirm('您真的要确认这条记录吗?');" href="javascript:__doPostBack('MyDataGrid$_ctl3$lbtnV1','')">未收单</a>
这是一个linkbutton按钮的客户端脚本,
javascript:__doPostBack('MyDataGrid$_ctl3$lbtnV1','')
这段代码就是它的事件触发脚本(客户端的),
关键是要了解它的调用方式,__doPostBack('',''),
第一个参数是控件名,第二个是参数,
控件名有个规律是一层一层的将父控件ID用$符号连接起来的。
MyDataGrid是DataGrid的ID,_ctl13是DataGridItem的ID,lbtnV1是这个linkbutton的ID。
你在客户端脚本中可以指定一个方法调用__doPostBack()函数就可以触发服务器控件的事件了。Top
2 楼Truly()回复于 2005-01-02 22:07:00 得分 15
<%@ Page language="c#" Codebehind="WebForm7.aspx.cs" AutoEventWireup="false" Inherits="DEMO1.WebForm7" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<TITLE>WebForm7</TITLE>
<META name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<META name="CODE_LANGUAGE" content="C#">
<META name="vs_defaultClientScript" content="JavaScript">
<META name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<SCRIPT language="javascript">
<!--
function __doPostBack(eventTarget, eventArgument) {
var theform;
if (window.navigator.appName.toLowerCase().indexOf("netscape") > -1) {
theform = document.forms["Form1"];
}
else {
theform = document.Form1;
}
theform.__EVENTTARGET.value = eventTarget.split("$").join(":");
theform.__EVENTARGUMENT.value = eventArgument;
theform.submit();
}
// -->
</SCRIPT>
</HEAD>
<BODY ms_positioning="GridLayout">
<FORM id="Form1" method="post" runat="server">
<INPUT type="hidden" name="__EVENTTARGET" value="" />
<INPUT type="hidden" name="__EVENTARGUMENT" value="" />
<ASP:BUTTON id="Button1" style="Z-INDEX: 101; LEFT: 104px; POSITION: absolute; TOP: 152px" runat="server"
text="Button"></ASP:BUTTON>
<A id="LinkButton3" href="javascript:__doPostBack('Button1','')">js调用服务器事件</A>
</FORM>
</BODY>
</HTML>Top
3 楼zhizhubao(至猪宝)回复于 2005-01-02 22:24:55 得分 0
谢谢两位Top




