从Javascript调用C#方法

时间:2013-05-28 14:31:04

标签: c# javascript asp.net

if(httpRequest.readyState == 4 && httpRequest.status == 200)
{
    <% SetText(); %>
}

我需要在javascript中调用代码后面的方法。方法显然被称为SetText(),它是无效的。

我试过这个没用。

7 个答案:

答案 0 :(得分:5)

您必须使用服务或处理程序公开C#方法。根据您的体系结构,处理程序可以以不同的方式实现(MVC,.net HttpHandler,JayRock处理程序等)。 然后你必须使用AJAX请求从Javascript调用该方法。

请记住,避免在服务器端生成的Javascript代码中嵌入CSharp代码块。

参考文献:

答案 1 :(得分:2)

至少如果你没有提出AJAX请求,这是不可能的。否则,无法通过客户端访问服务器端方法(在本例中通过JS)。

答案 2 :(得分:1)

H i answered a similar question on Calling a C# method from Javascript I provided an example using AJAX: Call C# method in javascript function directly

Hope this will help.

答案 3 :(得分:0)

客户端无法以您在问题中指定的方式访问服务器方法。除非你使用类似AJAX的东西,否则你不想做什么。

请解释您正在尝试做什么,也许有人可以用不同的方式解释您的问题。

答案 4 :(得分:0)

进行一次ajax调用,检查连接是否正常。如果连接正常,请在其中进行实际调用(在服务器端)并返回数据。

由于您发出异步请求,因此页面数据不会显示任何错误消息。即使存在一些错误,您也会进入错误处理程序,并且知道在发生错误时该怎么做。

当客户端代码必须直接联系服务器方法时,不应存在任何情况。如果您的设计是这样的话,您可以随时解决这个问题。

答案 5 :(得分:0)

您可以使用AJAX完成此任务。

我目前正在使用HTTPHandler通过AJAX进行调用。我正在使用服务“.asmx”访问我的处理程序,代码看起来像这样

<%@ WebService Language="C#" Class="MyClass" %>

答案 6 :(得分:0)

试试这个链接 http://www.c-sharpcorner.com/UploadFile/abhikumarvatsa/calling-an-Asp-Net-C-Sharp-method-web-method-using-javascript/

是的,但没有ajax调用就不可能:(。

请确保您已导入所有必需的jquery文件,并且您为ajax调用编写的函数应为“STATIC”。

休息将被清除,请点击链接