我有三个查询字符串(querystring1 = 100,querystring2 = A& B,querystring3 = 300),网址显示为http://mywebsite.com?querystring1=100&querystring2=A%26B&querystring3=300
。 (querystring2“A& B”编码为“A%26B”)。它正确地返回数据,到目前为止没有问题。但是,我的ExportToExcel方法有
Response.Write("<script>window.open('" & Request.Url.ToString & "&excel=true&PageSize=" & TotalRecs.ToString() & "','_new', '');
history.go(-1);
</script>")
无法正常工作,因为在呈现页面时,URL中的querystring2被解码为“A&amp; B”,即http://mywebsite.com?querystring1=100&querystring2=A&B&querystring3=300&excel=true&PageSize=3
。它将查询字符串值视为“A”而不是“A&amp; B”。有人能告诉我如何解决这个问题吗?
答案 0 :(得分:2)
使用Server.UrlEncode
答案 1 :(得分:1)
试试这个:
string querystring2="A&B";
Response.Redirect("http://mywebsite.com?querystring2"+ Server.UrlEncode(querystring2));