弘帝企业智能建站系统交流平台

 找回密码
 立即注册
查看: 877|回复: 0

使用AJAX前端提交中英文特殊字符,后台URLDECODE办法

[复制链接]
发表于 2022-6-15 21:55:01 | 显示全部楼层 |阅读模式
北纬30°这款天然泉水取自于地理位置北纬30°安徽石台县仙寓山牯牛降林区
这段话用ajax提交时,发现°后面的中文在后台转码后是乱码,去掉°符号中英文一切正常。
经过网络学习,修改ajax提交,改为转码后提交,如下:
var params = getFormData($(this));
var content=encodeURIComponent(params.content);
var summary=encodeURI(params.summary);
params=($.extend(params,{content:content,summary:summary}));
var page = $("[name=page]").val();
var pagesize = $("[name=pagesize]").val();
$.ajax({
        data:params,
        type: 'post',
        dataType: 'json',
        success: function (data) {
                switch (data.stat) {
                        case "confirm":
                                if (confirm(data.info)) {
                                        $.send("?article", $.extend({ page: page, pagesize: pagesize }, sokey));
                                } else {
                                        $.send("?article_add", $.extend({ page: page, pagesize: pagesize }, sokey));
                                }
                                break;
                        case "alert":
                                alert(data.info);
                                break;
                        default:
                                alert("unknown error!");
                }
        }
});
此代码来自Hondy.Site.Login.Js.Article.js
后台:HCMS却使用找不到适合的方法来获取°,经过网络学习,发现很多decode并不支持utf-8,找了三天,也没有发现适合的,解决了°后乱码,°不能正确显示,解决了°,却发现在回车换行时多了0A0D字符,甚是苦恼。
经过耐心查询,通过国外搜索引擎发现解决方案:Decoding URL encoded UTF-8 strings in VBScript (newbedev.com)
三天没有解决的问题,迎刃而解,最重要的是代码简短高效,还是国外的香啊,百度越来越让程序员失望了。
URLDECODE已经成功应用在HCMS.Coding.URLDeCode方法中。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|弘帝企业智能建站系统 ( 皖ICP备07503252号 )

GMT+8, 2024-4-27 08:25 , Processed in 0.058672 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表