gpt4 book ai didi

javascript - JQuery-Ajax : encodeUriComponent not working (EncodeUri does)

转载 作者:行者123 更新时间:2023-12-01 00:47:53 24 4
gpt4 key购买 nike

在一个小型 asp.net web 客户端中,我有以下 Ajax 调用。

$.ajax({
type: "GET",
url: "Search.aspx?action=GetDocumentInfoByChronicleId&" + querystring
})
.success(function (msg) {
$("#documentcontent").html(msg);
})

查询字符串适用于默认字符,但在使用特殊字符时似乎不起作用(请参见下面的示例)

objectId=09028139800c59e3&Db=DIV_Firm <== Works
objectId=090281>>773c5983&Db=DIV_Firm <== Non Working

基于this (还有更多有关 SO 的帖子,我选择更改我的 ajax 调用,如下所示(EncodeUriComponent)。但似乎没有一个起作用(即使使用原始查询字符串)。

有人可以向我指出我到底做错了什么吗?

$.ajax({
type: "GET",
url: "Search.aspx?action=GetDocumentInfoByChronicleId&" + encodeURIComponent(querystring)
})
.success(function (msg) {
$("#documentcontent").html(msg);
})

注意: EncodeUri 似乎正在工作。但我更喜欢使用 EncodeUriComponent

最佳答案

如果在进行 ajax 调用时有某种方法来传递数据,不是会容易很多吗?哦等等,有,使用 data 选项

$.ajax({
type : "GET",
url : "Search.aspx",
data : {
action : 'GetDocumentInfoByChronicleId',
objectId : '09028139800c59e3',
Db : 'DIV_Firm'
}
});

jQuery 将为您创建查询字符串并适本地对其进行转义

作为旁注,encodeURI 正是您应该用来将包含 ?& 等的查询字符串编码为 encodeUriComponent 也会转义这些字符,使查询字符串无效,但上面发布的方法要简单得多,因为您根本不必担心编码。

关于javascript - JQuery-Ajax : encodeUriComponent not working (EncodeUri does),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23559077/

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