方法1的示例:
1 前台放一个按钮。设置为隐藏。注意:不能直接设置Visible=false的方式,这样的话在ASP.Net 2.0编译后的代码里是找不到这个按钮的。需要设置风格:style="display:none;"
2 双击按钮,写入C#方法,或者写一个调用后台其他方法的代码段
3 前台JS调用的时候,照如下写,这样可以模拟按钮的点击事件,触发后台方法:
document.getElementById("Button2").click();
示例
ASP.Net页:
<%
@ Page Language
=
"
C#
"
AutoEventWireup
=
"
true
"
CodeFile
=
"
Default.aspx.cs
"
Inherits
=
"
_Default
"
%>
<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" >
< html xmlns ="http://www.w3.org/1999/xhtml" >
< head runat ="server" >
< title > Untitled Page </ title >
< script >
function go()
{
document.getElementById( " Button2 " ).click();
}
</ script >
</ head >
< body >
< form id ="form1" runat ="server" >
< div >
< asp:TextBox ID ="TextBox1" runat ="server" ></ asp:TextBox >
< asp:Button ID ="Button1" runat ="server" Text ="Button" OnClientClick ="go();return false;" />
< asp:Button ID ="Button2" runat ="server" Text ="Button" OnClick ="Button2_Click" Style ="display: none;" />
</ div >
</ form >
</ body >
</ html >
<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" >
< html xmlns ="http://www.w3.org/1999/xhtml" >
< head runat ="server" >
< title > Untitled Page </ title >
< script >
function go()
{
document.getElementById( " Button2 " ).click();
}
</ script >
</ head >
< body >
< form id ="form1" runat ="server" >
< div >
< asp:TextBox ID ="TextBox1" runat ="server" ></ asp:TextBox >
< asp:Button ID ="Button1" runat ="server" Text ="Button" OnClientClick ="go();return false;" />
< asp:Button ID ="Button2" runat ="server" Text ="Button" OnClick ="Button2_Click" Style ="display: none;" />
</ div >
</ form >
</ body >
</ html >
后台C#:
using
System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Text;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load( object sender, EventArgs e)
{
}
protected void Button2_Click( object sender, EventArgs e)
{
this .SayHello();
}
private void SayHello()
{
this .TextBox1.Text = " 你好,何奎! " ;
}
}
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Text;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load( object sender, EventArgs e)
{
}
protected void Button2_Click( object sender, EventArgs e)
{
this .SayHello();
}
private void SayHello()
{
this .TextBox1.Text = " 你好,何奎! " ;
}
}
-----------------------------------------------------------------------------------自己写的。
ajax也可以实现:
首先在cs文件的方法中加入
[System.Web.Services.WebMethod]
类型(public) static 返回类型 方法名() //注意必须是静态的方法
{你的代码文件}
在js中这样引用PageMethods.方法名();