Maison interface Web tutoriel HTML 巧用AJAX实现UTF8编码表单提交到GBK编码脚本_html/css_WEB-ITnose

巧用AJAX实现UTF8编码表单提交到GBK编码脚本_html/css_WEB-ITnose

Jun 21, 2016 am 08:51 AM

巧用AJAX实现,多个不同编码的项目(GBK,UTF8)互相通过 POST/GET 汇总表单数据。最终实现 使用同一个页面接收 不同编码的 表单(GBK,UTF8),特别适合 JS 采集项目。

1、表单项目1 GBK编码格式

用户采集单是GBK编码,通过GET/POST提交上来的数据也是GBK格式,无需做任何处理

测试地址: http://www.miaoqiyuan.cn/products/anycharset/gbkForm.html

2、表单项目2 UTF8编码格式(可以在不同的域名下)

用户采集单是UTF8编码,通过GET/POST提交上来的数据也是UTF8格式,用表单项目1中的程序接收到的是乱码

测试地址(修改前,提交乱码): http://www.miaoqiyuan.cn/products/anycharset/utf8Form.html

不需要改变页面编码,只需要修改表单Action地址,增加name=”ConvertCallBack” value=”ProjectA/FormGBK”、name=”ConvertItems” value=”name,qq,bb” 的两个 input即可,不用对页面进行其他调整

编码设置,转换器自动操作。

<form action="convert/utf8.asp"...<input name="ConvertCallBack" value="ProjectA/FormGBK"><input name="ConvertItems" value="name,qq,address"/><!-- 根据表单实际情况,修改表单项目 -->
Copier après la connexion

测试地址(修改后): http://www.miaoqiyuan.cn/products/anycharset/utf8FormRepair.html

3、表单项目3 GBK编码格式(可以在不同的域名下)

没有任何影响,只要按照表单1的标准编写 参数即可

测试地址: http://www.miaoqiyuan.cn/products/anycharset/otherForm.html

全部测试包下载地址: http://www.miaoqiyuan.cn/products/anycharset/anycharset.rar

utf8.asp

<% @codepage=936 %><%	CallBack = Server.Htmlencode(Request("ConvertCallBack"))	Items = Split(Request("ConvertItems"),",")	if len(request.form) > 0 then		method = "POST"	else		method = "GET"	end if%><!DOCTYPE html><html lang="zh-CN"><head><meta charset="GB2312"><script src="http://www.miaoqiyuan.cn/wp-includes/js/jquery/jquery.js"></script></head><body><form action="<%=CallBack%>" method="<%=method%>" id="AutoPOST"><%	for each Item in Items		if trim(Item) <> "" then			Item = Server.Htmlencode(Item)%><% = Item %> : <textarea name="<% = Item %>" id="<% = Item %>"></textarea><br /><script>jQuery.post("utf8_convert.asp?MiaoQiYuanAutoConvertItem=<%=Item%>&<%=Request.QueryString%>","<%=Request.Form%>",function(res){	jQuery("#<% = Item %>").val(res);});</script><%		end if	next%><button type="submit">Waiting...</button><script type="text/javascript">setTimeout(function(){	jQuery("#AutoPOST").submit();},200);</script></body></html>
Copier après la connexion

utf8_convert.asp

<% @codepage=65001 %><%	function NotXSS(html)		NotXSS = html		NotXSS = replace(NotXSS, "<", "<")		NotXSS = replace(NotXSS, ">", ">")		NotXSS = replace(NotXSS, """", "&quote;")	end function		'防止参数冲突,使用了 MiaoQiYuanAutoConvertItem	Response.Write NotXSS(Request(Request.QueryString("MiaoQiYuanAutoConvertItem")))%>
Copier après la connexion
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Difficulté à mettre à jour la mise en cache des pages Web officielles du compte: comment éviter l'ancien cache affectant l'expérience utilisateur après la mise à jour de la version? Difficulté à mettre à jour la mise en cache des pages Web officielles du compte: comment éviter l'ancien cache affectant l'expérience utilisateur après la mise à jour de la version? Mar 04, 2025 pm 12:32 PM

Difficulté à mettre à jour la mise en cache des pages Web officielles du compte: comment éviter l'ancien cache affectant l'expérience utilisateur après la mise à jour de la version?

Comment utiliser les attributs de validation du formulaire HTML5 pour valider l'entrée utilisateur? Comment utiliser les attributs de validation du formulaire HTML5 pour valider l'entrée utilisateur? Mar 17, 2025 pm 12:27 PM

Comment utiliser les attributs de validation du formulaire HTML5 pour valider l'entrée utilisateur?

Comment ajouter efficacement les effets de course aux images PNG sur les pages Web? Comment ajouter efficacement les effets de course aux images PNG sur les pages Web? Mar 04, 2025 pm 02:39 PM

Comment ajouter efficacement les effets de course aux images PNG sur les pages Web?

Quel est le but du & lt; iframe & gt; étiqueter? Quelles sont les considérations de sécurité lorsque vous l'utilisez? Quel est le but du & lt; iframe & gt; étiqueter? Quelles sont les considérations de sécurité lorsque vous l'utilisez? Mar 20, 2025 pm 06:05 PM

Quel est le but du & lt; iframe & gt; étiqueter? Quelles sont les considérations de sécurité lorsque vous l'utilisez?

Quelles sont les implications de sécurité de l'utilisation des iframes et comment puis-je les atténuer? Quelles sont les implications de sécurité de l'utilisation des iframes et comment puis-je les atténuer? Mar 18, 2025 pm 02:51 PM

Quelles sont les implications de sécurité de l'utilisation des iframes et comment puis-je les atténuer?

Comment utiliser le HTML5 & LT; METER & GT; élément pour afficher des données numériques dans une plage? Comment utiliser le HTML5 & LT; METER & GT; élément pour afficher des données numériques dans une plage? Mar 12, 2025 pm 04:08 PM

Comment utiliser le HTML5 & LT; METER & GT; élément pour afficher des données numériques dans une plage?

Quelles sont les meilleures pratiques pour la compatibilité entre les navigateurs dans HTML5? Quelles sont les meilleures pratiques pour la compatibilité entre les navigateurs dans HTML5? Mar 17, 2025 pm 12:20 PM

Quelles sont les meilleures pratiques pour la compatibilité entre les navigateurs dans HTML5?

Comment utiliser efficacement les liens HTML pour la navigation et le référencement? Comment utiliser efficacement les liens HTML pour la navigation et le référencement? Mar 18, 2025 pm 02:39 PM

Comment utiliser efficacement les liens HTML pour la navigation et le référencement?

See all articles