• URL参数的加号等特殊字符的处理


    之前没有遇见过,这样的问题,所以都没有考虑过。有一个参数里面有一个“+”号,接收的时候+不见了,如address="上海黄埔+上海浦东",接收的时候变成“上海黄埔上海浦东”了。

    string url = "/xxx/xxx.aspx?xx=" + xx+ "&name=" + contextWai.Server.UrlEncode(name) + "&haha=" + contextWai.Server.UrlEncode(haha) + "&bedName=" + contextWai.Server.UrlEncode(bedName) + "&star=" + star + "&address=" + contextWai.Server.UrlEncode(address) + "&pic=" + contextWai.Server.UrlEncode(pic) + "&zaocan=" + contextWai.Server.UrlEncode(zaocan) + "&kuandai=" + contextWai.Server.UrlEncode(kuandai) + "&mianji=" + contextWai.Server.UrlEncode(mianji) + "&price=" + price + "&priceId=" + priceId + "&rid=" + rid + "&sign=";

    这个是我用ajax在一般处理程序里加上对称加密签名的。编码一下即可,Server.UrlEncode(),接收的时候不用解码Server.UrlDecode().

    function login(url){
        location.href=url;
    }

    之前我把上面的URL直接拼接login方法的,结果不行。跳转过去的时候,参数变成了跟没有编码时候的一样了。

    所以,得把他赋值给控件的属性,调用方法的时候再获取。

    如果是用表单提交,应该要加上

    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">

    如果在在js里面拼接

    JS:var url = "/xxx/xxx.aspx?xx=" + escape(xx);
    C#:string xx=Server.UrlDecode(Request.QueryString["Name"]);


  • 相关阅读:
    CodeSmith-Select
    winform显示、隐藏任务栏及开始菜单
    WinForm水印文本框
    添加自定义字体
    判断网络地址是否是自动获取
    设置本地网络为自动获取
    获取本地连接ip 掩码 网关 DNS
    指定WinCE部署路径
    SqlCeHelper
    docker netcore
  • 原文地址:https://www.cnblogs.com/hougelou/p/3135333.html
Copyright © 2020-2023  润新知