時々私は次の問題に直面します:
string txt = con.Request.Params["Par_name"].ToString();//the original par value is arabic text
次の結果が得られます!!
��� ������ ������� �����
この問題の理由と、元のアラビア語テキストを取得する方法は??
時々私は次の問題に直面します:
string txt = con.Request.Params["Par_name"].ToString();//the original par value is arabic text
次の結果が得られます!!
��� ������ ������� �����
この問題の理由と、元のアラビア語テキストを取得する方法は??
URL パラメーターを介して文字列を送信する場合、競合を避けるために ajax とその utf-8 を介しても、encodeURIComponent
. パラメータと完全な URL ではなく、値の一部のみをエンコードします。その後、コード ビハインドのパラメーターを読み取ると、通常はデフォルトで UrlDecode になりますが、そうでない場合は手動で行います。
たとえば、https ://stackoverflow.com/a/10968848/159270 のコードは次のようになります。
jQuery.ajax({
url: "/LogAction.ashx?par_name=" + encodeURIComponent(par_name) + "&par_address=" + encodeURIComponent(par_address),
type: "GET",
timeout: 3000,
async: true, // you can try and async:false - maybe is better for you
data: action=4, // here you send the log informations
cache: false,
success: function(html) {
jQuery("#FormID").submit();
},
error: function(responseText, textStatus, XMLHttpRequest) {
jQuery("#FormID").submit();
}
});
通常、これらはパラメーターとして文字列ではなく変数として送信され、回答がこの詳細に焦点を当てていなかったため、前の回答にこのエンコードを含めませんでした。
また読むことができます: http://xkr.us/articles/javascript/encode-compare/