gpt4 book ai didi

javascript - 如何将值从客户端发送到服务器端以进行服务器端处理

转载 作者:行者123 更新时间:2023-11-29 14:58:10 25 4
gpt4 key购买 nike

我正在尝试使用 javascript 或 JQuery 从客户端向服务器发送一个值(最好是我的代码隐藏中的一个方法)。我正在使用 C# .net 4.0。

在我的客户端 JQuery 中,我有:

 $.post("test.aspx/testMethod",
{
name: "Donald Duck",
city: "Duckburg"
}
);

在我的服务器端(test.aspx.cs)方法中,我有

  public void testMethod()
{
string name = Request.Form("name");
string city = Request.Form("city");
}

但是我得到一个编译错误:“不可调用的成员'System.Web.HttpRequest.Form'不能像方法一样使用。”

我该如何纠正这个问题?还是达到同样的目的?使用 $.ajax({...}) 不是一个选项,因为非静态方法需要该值。

最佳答案

对此有一个非常简单的答案。在搜索了数小时后,通过沿相同行发布的数十个问题以及许多人提供过于复杂的 ajax 回发解决方案,我想到了这个。基本上是一个类轮。希望对某人有帮助:

在您的 javascript 中,您只需调用方法:

PageMethods.SomeMethod('test');

您的“SomeMethod”将是这样的代码隐藏方法:

[WebMethod]
public static string SomeMethod(string param1)
{
string result = "The test worked!";
return result;
}

规则:您必须使用 WebMethod 属性识别您的代码隐藏方法。它必须是静态的。并且你必须在你的页面中注册一个脚本管理器,如下所示:

<asp:ScriptManager ID="MyScriptManager" runat="server" EnablePageMethods="true" />

因为我正在使用 aspx webforms 页面来执行一些非常简单的 javascript 功能,例如检索/存储地理位置,所以我根据需要将它放在 Form 元素中。

关于javascript - 如何将值从客户端发送到服务器端以进行服务器端处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14483440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com