如何从asp.net/jQuery.ajax帖子中获取URL参数?

如何从asp.net/jQuery.ajax帖子中获取URL参数?,asp.net,web-services,post,jquery,Asp.net,Web Services,Post,Jquery,我试图弄清楚如何从我正在使用的jQuery插件中获取URL中传递的参数。基本上,我向我的web服务发送一个POST-ajax请求,并尝试使用URL参数,但它们总是以零返回。我想这是因为我在一个岗位上 有谁能为我提供一些关于如何实现这一点的见解吗?我不确定您为什么选择在AJAX调用中使用querystring参数。除非有非常具体的原因,否则您应该将它们作为参数发布到web服务方法中。我不确定您为什么选择在AJAX调用中使用querystring参数。除非有非常具体的原因,否则您应该将它们作为参数发

我试图弄清楚如何从我正在使用的jQuery插件中获取URL中传递的参数。基本上,我向我的web服务发送一个POST-ajax请求,并尝试使用URL参数,但它们总是以零返回。我想这是因为我在一个岗位上


有谁能为我提供一些关于如何实现这一点的见解吗?

我不确定您为什么选择在AJAX调用中使用querystring参数。除非有非常具体的原因,否则您应该将它们作为参数发布到web服务方法中。

我不确定您为什么选择在AJAX调用中使用querystring参数。除非有非常具体的原因,否则您应该将它们作为参数发布到web服务方法中。

您好,我使用的是jQuery jqGrid插件,默认情况下,它会向url发布5或6个参数。我在获取这些参数时遇到了困难,通过查看一些php示例,它显示了从表单变量获取参数的方法……我只是想看看是否有一种方法可以做到这一点。我会看看我能做些什么,把它们作为参数发布。只是为了好玩,有没有一种方法可以让我这么做呢?

嗨,我正在使用jQuery jqGrid插件,默认情况下,它会向url发送5或6个参数。我在获取这些参数时遇到了困难,通过查看一些php示例,它显示了从表单变量获取参数的方法……我只是想看看是否有一种方法可以做到这一点。我会看看我能做些什么,把它们作为参数发布。只是为了好玩,有没有一种方法可以让我这样做呢?

对于ASP.NET

您可以使用
Request[“paramName”]获取
POST
参数

如果您使用带有查询字符串参数的
GET
请求,则

Request.QueryString["paramName"];
对于ASP.NET

您可以使用
Request[“paramName”]获取
POST
参数

如果您使用带有查询字符串参数的
GET
请求,则

Request.QueryString["paramName"];

我也有类似的问题

我正在使用jQuery/json并发回一个C#/Webservice。我不知道如何读取我创建的json变量

以下是客户端(在用户控件上):


我正在访问Web服务,但我需要json提供的用户名/密码来进行验证。

我遇到了类似的问题

我正在使用jQuery/json并发回一个C#/Webservice。我不知道如何读取我创建的json变量

以下是客户端(在用户控件上):


我正在访问web服务,但我需要json中的用户名/密码来进行验证。

如果您使用的是asp.net WebForms,我建议使用ScriptManager为web服务生成javascript代理,然后使用该javascript代理,而不是手动执行ajax调用。以下是有关将ScriptManager与web服务结合使用的快速教程/演练:

大致如下:

// in html you have this
<script src="WebService.asmx/jsdebug" type="text/javascript"></script>

// csharp web-service like this
[WebMethod]
public int Add(int a, int b) { return a + b; } 


// further javascript to call it
function CallAdd()
{
    // method will return immediately
    // processing done asynchronously
    WebService.Add(0,6, OnMethodSucceeded, OnMethodFailed);
}
//在html中,您可以
//像这样的csharp web服务
[网络方法]
公共整数加法(整数a,整数b){返回a+b;}
//进一步的javascript调用它
函数CallAdd()
{
//方法将立即返回
//处理是异步完成的
Add(0,6,onmethodsucceed,OnMethodFailed);
}

这将消除通过查询字符串发布参数的需要,soap环境中通常不支持查询字符串,因为服务需要格式良好的soap消息。

如果使用asp.net WebForms,我建议使用ScriptManager为web服务生成javascript代理,然后使用javascript代理,而不是手动执行ajax调用。以下是有关将ScriptManager与web服务结合使用的快速教程/演练:

string parameter = HttpUtility.ParseQueryString(HttpContext.Current.Request.UrlReferrer.Query).Get("param1");
大致如下:

// in html you have this
<script src="WebService.asmx/jsdebug" type="text/javascript"></script>

// csharp web-service like this
[WebMethod]
public int Add(int a, int b) { return a + b; } 


// further javascript to call it
function CallAdd()
{
    // method will return immediately
    // processing done asynchronously
    WebService.Add(0,6, OnMethodSucceeded, OnMethodFailed);
}
//在html中,您可以
//像这样的csharp web服务
[网络方法]
公共整数加法(整数a,整数b){返回a+b;}
//进一步的javascript调用它
函数CallAdd()
{
//方法将立即返回
//处理是异步完成的
Add(0,6,onmethodsucceed,OnMethodFailed);
}

这将消除通过查询字符串发布参数的需要,在soap环境中通常不受支持,因为服务需要格式良好的soap消息。

您可以提供代码示例吗?您可以提供代码示例吗?我使用jqgrid。它不会在URL中发布(作为QueryString)——它将所有内容都作为post参数发布。因此,在ASP.NET中,您应该能够以Request.Form(“page”)的形式获取请求的页码。我使用jqgrid。它不会在URL中发布(作为QueryString)——它将所有内容都作为post参数发布。因此,在ASP.NET中,您应该能够以Request.Form(“page”)的形式获取请求的页码。
string parameter = HttpUtility.ParseQueryString(HttpContext.Current.Request.UrlReferrer.Query).Get("param1");