我们的一个合作伙伴网站有一个网页,其中包含一个表单,我输入2-3个数字字段,一个验证码,然后提交表单。它会打开一个弹出窗口,显示所请求的详细信息。
弹出网址就是这样的
https://abc.co/xyz/gef/sample/certificate?Values=123456789|2011|A1563894a|y6zs8v|'1373550','4148114'
这件事只适用于IE。
同样的过程在Chrome或Firefox中无效,因为网址中的'
被编码为此类
https://abc.co/xyz/gef/sample/certificate?Values=123456789|2011|A1563894a|y6zs8v|%271373550%27,%274148114%27
我出现了错误
We are unable to process your request. Please try again later or contact Admin for further details. Try Again with Proper Inputs
所以,基本上服务器端解码设置正确,作为最终用户,我被迫使用IE很糟糕!
表单操作发生在Javascript中,我可以在发布请求之前编辑。示例代码:
var logNo =123456789;
var url ="/xyz/gef/sample/certificate";
var fromYear = "2011";
var logId="A1563894a";
var textID="y6zs8v";
var logNoListForCert="'1373550','4148114'";
var selectedValues =logNo+'|'+fromYear+'|'+logId+'|'+textID+'|'+logNoListForCert;
window.open('/xyz/gef/sample/certificate?selectedValues='+selectedValues,"Log_Certificate","scrollbars=yes,resizable=yes,height=500,left=0, top=0,alwaysRaised=1");
那么,有没有办法可以在Chrome& Firefox或任何其他解决方法,以实现此目的。
谢谢:)