zoukankan
html css js c++ java
JS传参出现乱码
问题说明:
在进行网站开发时,将表单的提交功能交给JS来传递,但是在传递中文的过程中出现类似于繁体字的乱码。
解决方案:
为了解决这个问题,首先从底层的C#代码审查,重新设置页面传值进行模拟,但是几经测试没有出现乱码的情况。然后监视网页传值给JS代码时,JS处理过程中,发现“中文”也是正常的,最后将问题定位于JS传值给处理页面的过程中出现了乱码,经过自己的努力,终于将这个问题解决。
具体的解决方案:
<1>在参数验证过程加入了代码的转化,具体的代码如下,formData就是参数数组。
for
(
var
i
=
0
; i
<
formData.length; i
++
)
{
formData[i].value
=
escape(formData[i].value);
}
函数代码
Code
function
validates(formData, jqForm, options)
{
var
queryString
=
$.param(formData);
for
(
var
i
=
0
; i
<
formData.length; i
++
)
{
if
(
!
formData[i].value)
{
alert(
'
您还有一些项目没有填写
'
);
return
false
;
}
if
(i
==
0
)
{
if
(
!
isStockCode(formData[i].value))
{
alert(
'
请您输入6位股票代码!
'
);
return
false
;
}
}
}
for
(
var
i
=
0
; i
<
formData.length; i
++
)
{
formData[i].value
=
escape(formData[i].value);
}
}
附注:
escape() 方法:
采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是%20。unescape方法与此相反。不会被此方法编码的字符: @ * / +。
<2>后台处理代码,将代码进行转化,转为正常的编码显示。
String User
=
Server.UrlDecode(Request[
"
User
"
]);
附注:URL 编码确保所有浏览器均正确地传输 URL 字符串中的文本。在某些浏览器中,像?、&、/ 和空格这样的字符可能会被截断或损坏,因此这些字符不能在ASP.NET页的<A>标记或查询字符串中使用,在查询字符串中进行编码时,浏览器会以请求字符串的形式重新发送这些字符串。
查看全文
相关阅读:
IfcFurnishingElementType
IfcRelAssociatesClassification
IfcRelAssociatesDocument
IfcContext
IfcRelAssociatesMaterial
我是高敏感的人,你呢?
介绍一本红色的书
矫枉必须过正
大家都在说的民法典,与我有何关系?
线上Kafka突发rebalance异常,如何快速解决?
原文地址:https://www.cnblogs.com/yank/p/1238097.html
最新文章
IfcAxis1Placement
IfcProjectionElementTypeEnum
IfcPhysicalOrVirtualEnum
IfcElementCompositionEnum
IfcPropertyTemplateDefinition
IfcRelAssignsToGroupByFactor
IfcRelAssignsToProcess
IfcRelAssignsToGroup
IfcPropertySetTemplate
IfcPropertySetDefinition
热门文章
IfcOpeningElementTypeEnum
IfcElementAssemblyTypeEnum
IfcAssemblyPlaceEnum
IfcInternalOrExternalEnum
IfcRelSpaceBoundary2ndLevel
IfcRelReferencedInSpatialStructure
ls 参数
IfcRelServicesBuildings
IfcRelConnectsWithRealizingElements
IfcRelInterferesElements
Copyright © 2011-2022 走看看