Discussion on the problem of garbled characters in iframe page parameters

Discussion on the problem of garbled characters in iframe page parameters
I encountered a very unusual parameter garbled problem. First look at the page

As shown in the picture, there are the same three radios below the monthly indicators.
There is an iframe below the three radios. The effect is that clicking different radios will display different pages.
When clicking, pass the web page address with parameters.

(1) A problem occurred. When switching between "Daily Index" and "Monthly Index", the parameters I passed were Chinese characters, so they were obtained as garbled characters in the background.
So I encode the parameters and decode them with UrlDecode in the background, but I am disappointed to find that the characters are still garbled.
Then I carefully checked the page encoding and found that the page to be opened in the iframe had no encoding.
So add the following sentence to the page

Copy code
The code is as follows:

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

It seems to be working now, switching between the "Daily Indicators" and "Monthly Indicators" web pages can display normally, and the parameters are passed.

(2) But a weird problem occurred. When I switched the radio, an error message appeared and the parameters became garbled characters.
I really don't know what went wrong this time. The same JS method is used for "daily indicators", "monthly indicators" and radio click to switch pages.
In frustration, I randomly clicked around and found the following:
When I clicked "Coalbed Methane", the page was normal. Then when I clicked "Oil Production", the parameters were wrong. When Oil Production was already selected, I clicked "Oil Production" and the page was displayed normally. It shouldn't be like this. Then I compared "Coalbed Methane" and "Oil Production". I have already posted the official page for the "Oil Production" module, but I just posted the Baidu page randomly because the "Coalbed Methane" module has not been made yet. Because of the encoding problem in question (1), the first thing I thought of was the encoding problem. I checked Baidu encoding as follows:

Copy code
The code is as follows:

<metahttp-equiv="content-type" content="text/html;charset=utf-8">

The encoding format is different. So I also put "coalbed methane" on the "oil production" page and removed Baidu.
Um, the page runs normally, but the parameters are not reported and the code is garbled.

Analyze the reason : it seems that when passing parameters, what is obtained is the encoding of the current iframe display page, which has nothing to do with the encoding of the page to be opened.
But this really shouldn't be the case. It's an iframe. I assign a URL and pass parameters to the iframe in its parent page. Why should I care about the current page of the iframe?

<<:  How to deploy MongoDB container with Docker

>>:  Web designers also need to learn web coding

Recommend

Detailed explanation of CSS3 Flex elastic layout example code

1. Basic Concepts //Any container can be specifie...

Problems with using wangeditor rich text editing in Vue

wangEditor is a web rich text editor developed ba...

Solution to running out of MySQL's auto-increment ID (primary key)

There are many types of auto-increment IDs used i...

Mysql 5.6 "implicit conversion" causes index failure and inaccurate data

background When performing a SQL query, I tried t...

Detailed explanation of Promises in JavaScript

Table of contents Basic usage of Promise: 1. Crea...

Vue+thinkphp5.1+axios to realize file upload

This article shares with you how to use thinkphp5...

js learning notes: class, super and extends keywords

Table of contents Preface 1. Create objects befor...

Analysis of the process of deploying Python applications in Docker containers

Simple application deployment 1. Directory struct...

Docker Machine in-depth explanation

Differences between Docker and Docker Machine Doc...

Using js to realize dynamic background

This article example shares the specific code of ...