在url字符串中传递参数字符串

时间:2015-01-30 14:44:28

标签: javascript jquery html5 asp-classic

我的变数:

var strArgsString = "?Category=Customer&Year=2014";
var intModuleNo = "2";
var strOrigDashName = "Invoices"

我的AJAX帖子:

    var jqxhr = $.post("includes/saveParameters.asp?dname="+strOrigDashName+"&mod="+intModuleNo+"&args='"+strArgsString+"'", function() {
    alert("success");
})
.fail(function() {
    alert("error");
});

它返回失败,因为" args" value被视为完整查询字符串的延续。 我相信会有很多方法可以做到这一点,但我怎么能得到"?类别=客户和年份= 2014年"在我的.asp文件中被视为字符串?

目前我有这些

strDashboardName = Request.QueryString("dname")
intModuleNumber = Request.QueryString("mod")
strParamsArgString = Request.QueryString("args")

任何解决方案都表示赞赏,但最优惠的是优先考虑,谢谢。

1 个答案:

答案 0 :(得分:2)

我认为您希望对args字符串进行编码,以便它可以表示为数据,而不是查询字符串的字面延续。

var strArgsString = encodeURIComponent("?Category=Customer&Year=2014");
var intModuleNo = "2";
var strOrigDashName = "Invoices"

还有两个额外的编码选项。 encodeURI和逃脱。有关详细信息,请参阅Best practice: escape, or encodeURI / encodeURIComponent