如何使用jQuery在GET请求中传递参数

我应该如何在jQuery Ajax请求中传递查询字符串值?我目前按照以下方式进行操作,但是我敢肯定有一种更清洁的方法,不需要我手动编码。

$.ajax({

url: "ajax.aspx?ajaxid=4&UserID=" + UserID + "&EmailAddress=" + encodeURIComponent(EmailAddress),

success: function(response) {

//Do Something

},

error: function(xhr) {

//Do Something to handle error

}

});

我已经看到了将查询字符串参数作为数组传递的示例,但是我看到的这些示例没有使用$.ajax()模型,而是直接使用$.get()。例如:

$.get("ajax.aspx", { UserID: UserID , EmailAddress: EmailAddress } );

我更喜欢使用$ .ajax()格式,因为这是我习惯的格式(没有特别好的理由-只是个人喜好)。

在我的问题结束(如“太过本地化”)之后,我发现了一个相关的(相同的)问题-至少有3票赞成(我很遗憾没有首先找到它):

这完美地回答了我的问题,我发现以这种方式进行操作更容易阅读,并且不需要encodeURIComponent()在URL或DATA值中手动使用(这是我在bipen的答案中不清楚的内容)。这是因为该data值是通过自动编码的$.param()。以防万一这对其他任何人都有用,这是我处理的示例:

$.ajax({

url: "ajax.aspx?ajaxid=4",

data: {

"VarA": VarA,

"VarB": VarB,

"VarC": VarC

},

cache: false,

type: "POST",

success: function(response) {

},

error: function(xhr) {

}

});

回答:

使用ajax的data选项。您可以通过dataajax中的选项将数据对象发送到服务器,并且type定义了如何发送数据对象(POSTGET)。默认类型为GETmethod

尝试这个

$.ajax({

url: "ajax.aspx",

type: "get", //send it through get method

data: {

ajaxid: 4,

UserID: UserID,

EmailAddress: EmailAddress

},

success: function(response) {

//Do Something

},

error: function(xhr) {

//Do Something to handle error

}

});

您可以通过以下方式获取数据(如果您使用的是PHP)

 $_GET['ajaxid'] //gives 4

$_GET['UserID'] //gives you the sent userid

我相信在aspx中(可能是错误的)

 Request.QueryString["ajaxid"].ToString();

以上是 如何使用jQuery在GET请求中传递参数 的全部内容, 来源链接: utcz.com/qa/434506.html

回到顶部