2011-12-05 2 views
6

私はAUIのリクエストにYUIを使用している単純なasp.net Webアプリケーションを持っています。アプリケーションはテキストボックスからテキストを読み取り、AJAXリクエストをサーバーに送信します。次のコードAJAXリクエストで®文字を送信する問題があります

<body> 
    <form id="form1" runat="server"> 
    <div> 
     <input id="txt" name="txt" type="text" value="[Enter some value]" /> 
     <input id="btn" type="button" value="button" /> 
    </div> 
    <div id="out"></div> 
    </form> 
</body> 

次は何を私はアプリケーションで行うことはAjaxのレスポンスにそれをDBと書くためにそれを保存し、ユーザーが入力した文字を受け入れているAjaxリクエスト

YAHOO.util.Event.onDOMReady(function() { 
    YAHOO.util.Event.addListener("btn", "click", function(evt) { 
     var url = "Server.aspx?type=test&txt=" + document.getElementById("txt").value; 
     var btn = document.getElementById("out"); 
     var cObj = YAHOO.util.Connect.asyncRequest('GET', url, { 
      success: function(o) { 
       btn.innerHTML += "<div>" + o.responseText + " = " + o.responseText.charCodeAt(0) + "</div>"; 
      }, 
      failure: function(o) { 
       confirm("Its failure"); 
      }, 
      cache: false 
     }); 
    }); 
}); 

を初期化するクライアントスクリプトです。システムはUnicode(データベース)をサポートしていません。

私の問題は、テキストボックスに「登録済み」の文字(0174)が入力され、サーバーに送信されたときに、ユーザーがテキストボックスに入力したものではない#65533を取得していることです。また、この文字はUnicode文字ではありません。

+0

どのような文字エンコードを使用しますか? Unicodeエンコーディングではないことに注意しましたが、使用する*の指定はしていません。 – Piskvor

+0

送信されるAjaxリクエストのコンテンツ・エンコーディングまたはコンテンツ・タイプを意味しますか? –

+1

おそらく多くの異なるエンコーディング(設定)が含まれており、すべてが重要です(例: DBエンコーディング、クライアントに渡されるページのエンコーディング、サーバー側で作業するときのエンコーディングBtw。、あなたの問題は実際には "登録された"キャラクターだけに限定されていますか、あるいはこの問題を示している他の文字もありますか? – codeling

答えて

1

設定したタグを除いて、バックエンドはasp.netでプログラミングされていますか?そこで働いているエンコードを確認してください(例:hereを参照)。あなたの問題は、あなたがクライアントに提供するものとは異なるように聞こえます(サーバーの設定を参照してください)。

+0

これはありがとう私はweb.configでglobalizatioinを追加しようとしましたが、私のために働いていない。これ以上の入力は? –

+0

私が正しく理解していれば、AJAXリクエストに答えるサーバー部分はテキストを受け取り、それをデータベースに入れて戻します。返された値が誤って到着します。しかし、あなたはサーバー上の値をチェックしましたか?まだ正しいのですか? – codeling

+0

彼らはあまりにも間違っている...私はデバッグ中にサーバー上の値をチェックし、コンテンツタイプはapplication/x-www-form-urlencoded; utf-8; –

2

設定の問題については、エディタとファイルの保存に使用しているファイルのエンコーディングに関連している可能性があります。文字エンコーディングを設定するだけでは不十分ですが、時にはそれは重要ではない場合もあります。たとえば、BOMのないutf-8のように、ファイルセットをサポートするエンコーディングでファイル自体を保存する必要があります。情報。もちろん、あなたのWebサーバー、データベースサーバー(あなたが使っていると仮定して)とクライアントの間には、たくさんのことが起こる可能性があります。 wheウェブサーバー、データベース、エディタのエンコーディングファイルのデフォルト文字をチェックアウトしてファイルを保存しています。

関連する問題