2

ユーザーが一般的にコピーして貼り付けるフォームがあります。コピーと過去にアポストロフィがある場合、それらはすべて疑問符に変わります。たとえば、誰かがこの記事のタイトルをコピーして貼り付けました。

http://brooklynheightsblog.com/archives/47796

ユーザーが投稿を行う通常のフォームでコピー アンド ペーストすると、この問題が発生します。ただし、JSON を介して ajax を送信することもあり、この方法で行うと、同じ正確なコピーと貼り付けからアポストロフィを使用できます。このメソッドは、Jackson json メッセージ コンバーターを使用します。

さらに、エンコードされたフォーム データを確認したところ、問題ないようです。

Atlantic+Avenue%E2%80%99s+Sahadi%E2%80%99s+Preps+For+Wall-To-Wall+%28To+Wall%29+Expansion

オンラインデコーダーを使用してみましたが、テキストは正常にデコードされました。

これを引き起こすフォーム送信で何が起こっているか知っている人はいますか?

ありがとう!

4

3 に答える 3

2

これは、コピーされるアポストロフィが標準の ASCII ではないためです。これは、単語のようなプログラムがアポストロフィをより見栄えよくするために使用する特別な記号です。これらの記号を通常の記号に変換する必要があります。ブラウザまたはサーバーでこれを行うことができます。

これはあなたの解決策かもしれません: MSワードの引用符とアポストロフィの変換

于 2012-09-21T01:17:36.560 に答える
1

web.xml にフィルターを含める必要があります

<filter>
    <filter-name>characterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>
于 2012-09-21T01:16:17.927 に答える
0

これらの属性を試しましたか?

<form method="post" enctype="application/x-www-form-urlencoded" accept-charset="UTF-8" ... />
于 2012-09-21T12:27:38.423 に答える