`
Leon.Wood
  • 浏览: 288311 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JS调用c#后台的函数(其中的参数通过隐藏域传递)

阅读更多

基本思路
引用

javaScript函数中执行C#代码中的函数:
  方法一:1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;
  2、在前台写一个js函数,内容为document.getElementById("btn1").click();
  3、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;

示例说明:
前台代码
JavaScript代码 复制代码
  1. <ul>     
  2.     <asp:HiddenField ID="HidTagId" runat="server" Value="1"/>    
  3.     <div style="display:none;">   
  4.     <asp:Button ID="btnShow" runat="server" Text="" OnClick="getMailByTag" />    
  5.     </div>   
  6.     <asp:Literal ID="LtlShow" runat="server"></asp:Literal>    
  7. </ul>  
<ul>  
    <asp:HiddenField ID="HidTagId" runat="server" Value="1"/> 
    <div style="display:none;">
    <asp:Button ID="btnShow" runat="server" Text="" OnClick="getMailByTag" /> 
    </div>
    <asp:Literal ID="LtlShow" runat="server"></asp:Literal> 
</ul>

后台的代码
JavaScript代码 复制代码
  1. //绑定标签的数据   
  2.         string strShowByTag = "";   
  3.         Tag tag = new Tag();   
  4.         DataSet tagDS = tag.GetTagsDS();    
  5.         for (int i = 0; i < tagDS.Tables[0].Rows.Count; i++)   
  6.         {   
  7.             strShowByTag += "<a href='#' onClick='javascript:getMailByTag(" + tagDS.Tables[0].Rows[i]["ID"].ToString() + ")'>" + tagDS.Tables[0].Rows[i]["Name"].ToString() + "</a>";   
  8.         }   
  9.         this.LtlShow.Text = strShowByTag;  
//绑定标签的数据
        string strShowByTag = "";
        Tag tag = new Tag();
        DataSet tagDS = tag.GetTagsDS(); 
        for (int i = 0; i < tagDS.Tables[0].Rows.Count; i++)
        {
            strShowByTag += "<a href='#' onClick='javascript:getMailByTag(" + tagDS.Tables[0].Rows[i]["ID"].ToString() + ")'>" + tagDS.Tables[0].Rows[i]["Name"].ToString() + "</a>";
        }
        this.LtlShow.Text = strShowByTag;


JavaScript代码 复制代码
  1. #region//按标签查看邮件   
  2.     public void getMailByTag(object sender, EventArgs e)   
  3.     {   
  4.         int tagID = DataTypeConvert.ConvertToInt(this.HidTagId.Value);   
  5.         Mail mail = new Mail();   
  6.         DataSet mailDs = mail.GetMailByTag(folderID, tagID);   
  7.         CommonOperation.DataBinder.BindGridViewData(gvMail, mailDs);   
  8.     }   
  9.     #endregion  
#region//按标签查看邮件
    public void getMailByTag(object sender, EventArgs e)
    {
        int tagID = DataTypeConvert.ConvertToInt(this.HidTagId.Value);
        Mail mail = new Mail();
        DataSet mailDs = mail.GetMailByTag(folderID, tagID);
        CommonOperation.DataBinder.BindGridViewData(gvMail, mailDs);
    }
    #endregion

JS函数
JavaScript代码 复制代码
  1. //调用后台的按标签查看邮件的方法   
  2. function getMailByTag(strTagID)   
  3. {      
  4.     document.getElementById("HidTagId").value=strTagID;   
  5.     document.getElementById("btnShow").click();   
  6. }  
//调用后台的按标签查看邮件的方法
function getMailByTag(strTagID)
{   
    document.getElementById("HidTagId").value=strTagID;
    document.getElementById("btnShow").click();
}

分享到:
评论

相关推荐

    .net中前台javascript与后台c#函数相互调用问题.docx

    - 方法三:利用ASP.NET的`__doPostBack`函数提交表单,通过隐藏字段传递参数调用C#函数。 - 方法四:监听键盘事件,根据按键码判断是否触发提交,隐藏字段存储要调用的函数名,后端根据请求参数调用相应函数。 2....

    javascript和C#相互调用.docx

    - 定义一个JavaScript函数,如`SubmitKeyClick`,监听键盘按键事件,当用户按下Enter键时,调用C#函数。 - 创建一个隐藏字段`FunName`,用于存储要调用的C#函数名,然后在后台根据这个字段的值调用相应的函数。 *...

    C#代码与javaScript函数的相互调用.docx

    因此,直接从JavaScript调用C#函数并不是一个常见的需求,但可以通过一定的技术手段实现间接调用。 **方法一**: - **步骤1**:在ASP.NET项目中创建一个按钮,并在该按钮的点击事件中编写需要调用的C#代码。 - **...

    ASP.NET中前台javascript与后台代码调用.doc

    这是一种简单的方法,通过在ASP.NET页面中定义隐藏域并在服务器端为其赋值,前端JavaScript可以读取这些隐藏域的值。 - **方法二**:直接引用公共变量。如果C#变量被声明为`public`并且其名称符合某些规则,那么...

    js调用后台、后台调用前台等方法总结

    在C#后台代码中,可以使用`Request.Form["FunName"]`获取由JavaScript传递的参数,然后根据参数决定执行哪个后台方法。在处理完毕后,可以将结果通过页面上的元素返回给JavaScript。 接下来,探讨如何在JavaScript...

    C# javaScript函数的相互调用

    ### 如何在JavaScript中调用C#函数 1. **通过按钮点击触发C#函数**: - 使用一个HTML按钮,并为其编写一个JavaScript函数,该函数通过调用`document.getElementById("btn1").click();`模拟按钮点击事件,从而间接...

    C#与JAVA互相调用.pdf

    - 方法一:通过隐藏的静态文本控件或隐藏域,将JavaScript变量的值写入,然后在后台使用`Request["name"]`获取这个值。 - 方法二:使用Cookie或Session存储JavaScript变量的值,然后在C#中通过相应的API读取。 4....

    ASP.NET 前台javascript与后台代码调用

    在前台页面中设置一个静态文本控件或隐藏域来存储JavaScript变量的值,然后在后台通过request["控件ID"]来获取这些值。 - 方法二:通过cookie或session。在JavaScript中将变量的值存储到cookie或session中,然后在...

    c#页面与javascript交互

    通过以上介绍的方法,我们可以实现 C# 页面与 JavaScript 之间的变量赋值和函数调用等功能。这些技术点不仅适用于 ASP.NET Web Forms 应用程序,对于一些基于 .NET 的混合应用程序也非常有用。掌握这些技巧可以帮助...

    ASP.NET 前后台调用方法

    1. 在前台使用静态文本控件隐藏域,将 JavaScript 变量值写入其中。 2. 在后台,可以使用 Request["id"] 来获取值。 方法二:使用 Cookie 或 Session 1. 在前台,可以使用 Cookie 或 Session 来存储 JavaScript ...

    javaScript函数中执行C#代码中的函数方法总结

    3. 在JavaScript代码段中,创建一个变量并将其值设置为通过`&lt;%= %&gt;`标签调用C#函数返回的字符串。 ### 方法三:使用__doPostBack方法 1. 在***页面中,创建一个JavaScript函数`__doPostBack`,该函数可以手动触发...

    C#编写的一个高级语言程序——值传递

    3. **方法重载与值传递**:C#支持方法重载,即在同一作用域内可以有多个同名方法,只要它们的参数列表不同(数量、类型或顺序不同)。值传递在此过程中起到了关键作用,因为是根据传递的值来选择正确的方法。 4. **...

    重载、覆盖、多态与函数隐藏

    在面向对象编程中,重载、覆盖、多态和函数隐藏是几个重要的概念,它们共同作用于类的继承体系中,影响程序的行为和扩展性。下面将详细解释这些概念,并通过C++中的代码示例来加深理解。 首先,函数重载...

    .NET平台和C#编程总结

    此外,C#支持多种参数传递方式,如值传递、引用传递、out参数和params关键字,以适应不同场景的需求。值传递复制参数的值,而引用传递和out传递允许对参数进行修改。params关键字允许传递可变数量的参数,方便创建...

    net webform开发中常遇到的问题1

    - 方法一:使用静态文本控件或隐藏域,将JavaScript变量的值写入,然后在后台读取。 - 方法二:利用`Page.ClientScript.RegisterStartupScript`方法在页面中注册脚本,将JavaScript变量的值传回服务器。 - 方法三...

    深入.net平台和C#编程

    多态则包括方法的重载和重写,重载是在同一作用域内通过不同的参数列表调用相同名称的方法,而重写是在子类中改变父类方法的实现。 在C#中,属性和方法是类的主要组成部分。属性用于表示类的状态,通常有只读、只写...

    C#(16/58)

    在C#编程语言中,面向对象编程(OOP)是一个核心概念,本节主要讨论了C#中的OOP特性,包括继承、访问修饰符、参数传递、静态成员以及方法的重载和重写等关键知识点。 首先,继承是OOP中的一个基本特性,允许创建一...

    C#分等级学习

    4. 函数与方法:学习如何定义和调用函数,理解参数传递机制,以及重载和递归的概念。 5. 面向过程编程:掌握结构化编程思想,使用函数封装和模块化代码。 二、面向对象编程 6. 类与对象:理解类作为对象的蓝图,...

    Object Oriented Programming Using C#(c#面向对象编程基础)

    委托是一种引用类型,它允许我们将方法作为参数传递给另一个方法。委托在事件处理、回调函数等方面非常有用。例如: ```csharp public delegate void OnGrownHandler(); public class Flower { public event ...

Global site tag (gtag.js) - Google Analytics