如何从 .cs 文件 (C#) 调用 JavaScript/jQuery 函数

Posted

技术标签:

【中文标题】如何从 .cs 文件 (C#) 调用 JavaScript/jQuery 函数【英文标题】:How to call JavaScript/jQuery function from .cs file (C#) 【发布时间】:2011-10-10 04:13:18 【问题描述】:

我正在处理 asp.net (C#) 项目,其中包括一些页面文件(aspx、aspx.cs)和一些仅 (.cs) 文件。我可以使用scriptregister 从页面文件(aspx、aspx.cs)访问 javascript/jQuery 函数,但我的问题是如何从单独的(.cs)文件访问 JavaScript/jQuery 函数。我在 (.cs) 文件中生成了一些 html 标记,因此只需要从 (.cs) 类调用 JavaScript/jQuery 函数。

我拥有的文件是,例如,Default.aspxDefault.aspx.csWeb.cs(我关心的是从 web.cs 调用 JavaScript/jQuery 函数)

实际上,我要做的是在 Web.cs(业务对象)中生成一些 HTML 代码,而在 web.cs 中生成 HTML 代码时,我需要一些由 jQuery 函数生成的其他动态 HTML 代码,它的输出是我的关注:var output ="My HTML Code Generated by jQuery function"

现在我需要将上面的 jQuery 输出与 Web.cs HTML 代码生成合并。

请告诉我如何从 web.cs 调用 jQuery 函数并将结果从 jQuery 取回到 web.cs 以便合并?

谢谢

【问题讨论】:

你到底想完成什么? How to call JavaScript/jQuery function from .cs file C#的可能重复 【参考方案1】:

您可以尝试直接写入响应流并输出

Response.Write("<script type=\"text/javascript\"> your JS call</script>");

问候, 西门

【讨论】:

【参考方案2】:

您可以使用 registerStartupScript 调用 JavaScript 函数。

ASPX 页面

<script type="text/javascript">

   function printOutput(arg)             
      alert(arg);
   

</script>

代码背后

protected void DoSomethingButton_Click(object sender, EventArgs e)

   ClientScriptManager cs = Page.ClientScript;

   cs.RegisterStartupScript(typeof (Page), "PrintScript_" + UniqueID, "printOutput('My HTML Code Generated by jquery function');", true);

【讨论】:

【参考方案3】:

您需要向 web.cs 传递对页面的引用。然后您将可以访问 page.clientscript 方法

【讨论】:

以上是关于如何从 .cs 文件 (C#) 调用 JavaScript/jQuery 函数的主要内容,如果未能解决你的问题,请参考以下文章

如何从 C# DLL 创建 .lib 文件?

C# 中如何调用DLL文件?

如何从 JavaScript 调用 C# 函数?

如何在文件 .aspx.cs 文件后面的 C# 代码中从 .js 文件访问 javascript 对象

Javascript调用C#后台方法及JSon解析

如何从asp.net中的js函数调用c#函数?