zoukankan      html  css  js  c++  java
  • 不用AJAX实现前台JS调用后台C#方法

    纯属小技巧,高手见笑了。

    一提到如何在前台JS调用后台C#方法,AJAX成为了必然的想法。
    只是实现的细节采用AJAX 1.0或者AjaxPro的区别。
    其实如果不用AJAX,我们也能够很方便地利用JS调用后台方法。

    步骤如下:
    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>

    后台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 = "Hello,Tom!";
        }

    }

    本文转自:http://www.cnblogs.com/heekui/archive/2007/04/01/695636.html (web.网际浪人.Blog)

  • 相关阅读:
    POJ 1887 Testing the CATCHER
    HDU 3374 String Problem
    HDU 2609 How many
    POJ 1509 Glass Beads
    POJ 1458 Common Subsequence
    POJ 1159 Palindrome
    POJ 1056 IMMEDIATE DECODABILITY
    POJ 3080 Blue Jeans
    POJ 1200 Crazy Search
    软件体系结构的艺术阅读笔记1
  • 原文地址:https://www.cnblogs.com/ericgisser/p/net_JsCallCs.html
Copyright © 2011-2022 走看看