不用前台ajax,实现javascript调用后台c#

步骤如下:
1 前台放一个按钮。设置为隐藏。注意:不能直接设置Visible=false的方式,这样的话在ASP.Net 2.0编译后的代码里是找不到这个按钮的。需要设置风格:style="display:none;"
2 双击按钮,写入C#方法,或者写一个调用后台其他方法的代码段
3 前台JS调用的时候,照如下写,这样可以模拟按钮的点击事件,触发后台方法:
document.getElementById("Button2").click();

 ASPX页

view plaincopy to clipboardprint?
<%@ 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> 
 
    <mce:script type="text/javascript"><!--  
    function go()  
    {  
         document.getElementById("Button2").click();  
     }  
      
// --></mce: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;" mce_Style="display: none;" /> 
        </div> 
    </form> 
</body> 
</html> 
<%@ 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>

    <mce:script type="text/javascript"><!--
    function go()
    {
         document.getElementById("Button2").click();
     }
   
// --></mce: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;" mce_Style="display: none;" />
        </div>
    </form>
</body>
</html>
 

C#页

view plaincopy to clipboardprint?
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 = "你好,何奎!";  
     }  

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/phqm/archive/2009/02/23/3929847.aspx

你可能感兴趣的:(JavaScript,Ajax,server,C#,button,textbox)