标题 | iframe下页面传参数为乱码问题探讨 |
内容 | 遇到了变态很不常见的参数乱码的问题,点击的时候传递带参数的网页地址,由于我传递的参数为汉字,在后台获取为乱码 遇到了变态很不常见的参数乱码的问题 首先看下页面 ![]() 如图,月度指标下面也有同样的三个radio。 三个radio 下面是一个iframe,实现效果是,点击不同的radio显示不同的页面, 点击的时候传递带参数的网页地址。 (1)问题出来了,当“日度指标”和“月度指标”切换的时候,由于我传递的参数为汉字,在后台获取为乱码, 于是进行给参数进行encode编码,后台UrlDecode解码,郁闷的发现还是乱码。 然后仔细对照页面的编码发现,要在iframe打开的页面没有编码。 于是在页面加上下面一句话 代码如下: <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 现在似乎好了,切换“日度指标”和“月度指标”网页都能正常显示,参数也传递过去了。 (2)可是变态的问题出现了,当我切换radio 的时候,报错了,参数又变成了乱码。 这次实在不知道哪里错了,“日度指标”、“月度指标”和radio点击切换页面的JS方法用的同一个。 郁闷中,自己乱点,发现如下: 当点击“煤层气”时页面正常,然后在点击“采油”参数错误了,我在采油已经为选中的情况下再点“采油”,页面竟然正常显示了 想象不应该这样啊 然后比对“煤层气”和“采油”,“采油”模块我已经挂上正式页面,“煤层气”模块由于还没有做只是随意挂上的百度页面。由于在问题(1)编码的问题,我首先想到的是编码问题,查看百度编码如下, 代码如下: <metahttp-equiv="content-type"content="text/html;charset=utf-8"> 编码格式不一样。所以我把“煤层气”也挂上了“采油”的页面,去掉百度。 额,页面正常运行了,不报参数乱码了。 分析下原因:貌似传递参数时,获取的是当前iframe展示页面编码,而和要打开的页面编码没有关系。 但是,真的不应该这样啊,那是一个iframe,我在iframe的父页面给iframe赋值url、传递参数, 管 iframe现在的页面鸟事啊? |
随便看 |
|
在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。