0

ユーザーがテキストを変更できるサイトを構築しています。次に、URL を作成して、ページが読み込まれたときに変更が適用されるようにします。ブラウザのアドレスバーにURLを入力すると、「ファンキー」な文字が表示されることを除いて、これはすべて機能します。

私が入れているURLは次のとおりです。

http://localhost:8888/PlantTags/index%20copy.php/temp=lg_oval&cn=Common Name&cX=-10&cY=40&cf=Giddyup&cfs=52&clh=1&ca=center&bn=Botanical Name&bX=80&bY=115&bf=Comic-Sans-Ms&bfs=21&blh=1&ba=center&rev=false

しかし、ブラウザはそれを次のようにコーディングしています:

http://localhost:8888/PlantTags/index%20copy.php?temp=lg_oval&cn=Big%2520Jumbo&cX=-10&cY=40&cf=Giddyup&cfs=52&clh=1&ca=center&bn=Botanical%2520Name&bX=80&bY=115&bf=Comic-Sans-Ms&bfs=21&blh=1&ba=center&rev=false?temp=lg_oval&cn=Big%20Jumbo&cX=-10&cY=40&cf=Giddyup&cfs=52&clh=1&ca=center&bn=Botanical%20Name&bX=80&bY=115&bf=Comic-Sans-Ms&bfs=21&blh=1&ba=center&rev=false

そのため、URL から cn パラメータを取得すると、余分な文字が取得されます。%2520 がどこから来ているのか、どうすればよいのか誰か教えてもらえますか? それをテキストエリアに挿入して、そこからhtmlを取得しようとしましたが、decodeURIComponent ...両方とも失敗しました。そうそう....javascriptまたはjQueryが選択された言語です。

ありがとうございました、

トッド

4

3 に答える 3

4

エンコードしようとしている URL にはスペースを使用せず、ハイフンを使用してください。それらははるかに読みやすくなり、のようなものでエンコードさ%20たり、.%2520

于 2013-03-04T15:26:28.833 に答える
2

デコードする%2520と、 が得られ%20ます。一部のフラグメントを 2 回エンコードしています。

于 2013-03-04T15:26:34.973 に答える
2

URL のスペースとしてスペースを使用することはできません。「&cn=Common Name」にはスペースがあります。

ブラウザーはすべてのスペースを (実際には URL エンコードして) %20 に変更し、要求を送信します。したがって、「common_name」などの値を変更する必要がありますが、サーバーもそれを処理できる必要があります...別の方法は、サーバー側で URL をデコードして、%20 が再びスペースに戻されるようにすることです。そして、それをやらせてください

于 2013-03-04T15:28:13.237 に答える