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

我需要从 javascript 后面的代码中调用方法。方法显然被调用SetText()并且它是无效的。

这个我试过没有用。

4

7 回答 7

5

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

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

参考:

于 2013-05-28T14:36:14.840 回答
2

这是不可能的,至少如果你不提出AJAX请求的话。否则,不可能通过客户端(在这种情况下通过 JS)访问服务器端方法。

于 2013-05-28T14:32:49.410 回答
1

您好,我回答了关于从 Javascript 调用 C# 方法的类似问题我提供了一个使用 AJAX 的示例:直接在 javascript 函数中调用 C# 方法

希望这会有所帮助。

于 2016-06-10T16:11:40.280 回答
0

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

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

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

其余将被清除请点击链接

于 2013-05-29T11:28:50.910 回答
0

客户端无法以您在问题中指定的方式访问服务器方法。除非您使用 AJAX 之类的东西,否则您想做的事情是不可能的。

请解释您要做什么,也许有人可以解释解决您问题的不同方法。

于 2013-05-28T14:33:45.527 回答
0

您可以使用 AJAX 完成此操作。

我目前正在使用 HTTPHandler 通过 AJAX 进行调用。我正在使用服务“.asmx”访问我的处理程序,代码如下所示

<%@ WebService Language="C#" Class="MyClass" %>
于 2013-05-28T15:11:05.487 回答
0

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

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

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

于 2013-05-28T14:58:11.947 回答