单个字符需要<![CDATA[ ----- ]] 包起来
如: xml += '<ContractNo>' + '<![CDATA[' + $.trim(self.LoanPool.ContractNo) + ']]>' + '</ContractNo>';
如果是对象用以下方法:
/** * 转义对象中包含有【&、<】 的特殊字符 * @param {} str * @returns {} */ escapeObject: function (obj) { $.each(obj, function (key, value) { var reg2 = RegExp(/&/g); if (value != null && value.toString().match(reg2)) { value = value.replace(reg2, '&') obj[key] = value; }
var reg1 = RegExp(/</g); if (value != null && value.toString().match(reg1)) { value = value.replace(reg1, '<'); obj[key] = value; } }) }, /** * 反转义对象中包含有【&、<】 的特殊字符 * @param {} str * @returns {} */ unEscapeObject: function (obj) { $.each(obj, function (key, value) { var reg2 = RegExp(/&/g); if (value != null && value.toString().match(reg2)) { value = value.replace(reg2, '&'); obj[key] = value; }
var reg1 = RegExp(/</g); if (value != null && value.toString().match(reg1)) { value = value.replace(reg1, '<'); obj[key] = value; } }) },