zoukankan      html  css  js  c++  java
  • Dynamics CRM GBK编码

    Dynamics CRM用文本汉字为条件去请求数据时,传过去的竟然是GBK编码⊙_⊙

    下面这段代码解决了我的问题,这是拷贝自网上一位大神的博客:

    http://qq100002656.blog.163.com/blog/static/11890173620121126103733920/

     1 //汉字转为gbk
     2 function encodeURL(s) {
     3    var img = document.createElement("img");
     4    // escapeDBC 对多字节字符编码的函数
     5    function escapeDBC(s) {
     6       if (!s) return ""
     7       if (window.ActiveXObject) {
     8          // 如果是 ie, 使用 vbscript
     9          execScript('SetLocale "zh-cn"', 'vbscript');
    10          return s.replace(/[dD]/g, function($0) {
    11             window.vbsval = "";
    12             execScript('window.vbsval=Hex(Asc("' + $0 + '"))', "vbscript");
    13             return "%" + window.vbsval.slice(0,2) + "%" + window.vbsval.slice(-2);
    14         });
    15       }
    16       // 其它浏览器利用浏览器对请求地址自动编码的特性
    17       img.src = "nothing.action?separator=" + s;
    18       return img.src.split("?separator=").pop();
    19    }
    20    // 把 多字节字符 与 单字节字符 分开,分别使用 escapeDBC 和 encodeURIComponent 进行编码
    21    return s.replace(/([^x00-xff]+)|([x00-xff]+)/g, function($0, $1, $2) {
    22    return escapeDBC($1) + encodeURIComponent($2||'');
    23    });
    24 }
    汉字转为gbk编码
  • 相关阅读:
    html常用标签与扩展(标签语义化、Doctype)
    html认识
    兼容性问题统计
    最短的包含字符串 (尺取法)
    与7 无关的数(前缀和)
    子序列(尺取入门)
    孪生素数
    vector 详解
    进制转换(高级版^^)
    容斥 mobius反演
  • 原文地址:https://www.cnblogs.com/SilverWolf/p/6674532.html
Copyright © 2011-2022 走看看