私はサーバーに短いメッセージをPOSTする必要があります。場合によっては、次のような特殊文字が表示されることがあります。JQuery ajax関数を介して送信されたクエリ文字列内の特殊文字をエスケープする方法はありますか?
&message=Joining a game of Commands & Colors: Ancients.
クエリ文字列から特殊文字をエスケープするにはどうすればよいですか?
私はDjangoを使用しています。ここで私はエンコードする必要があるフィールドです:
<textarea class="text-area" id="message" name="message" rows="3" cols="30">
Joining a game of {{ game.name }}.
</textarea>
UPDATE:私は、POSTは、jQueryのAJAX機能を通過していることを実現:
$("#checkin-button").click(function() {
var mid = $("input#mid").val();
var message = $("textarea#message").val();
var facebook = $('input#facebook').is(':checked');
var name = $("input#name").val();
var bgg_id = $("input#bgg-id").val();
var thumbnail = $("input#thumbnail").val();
var dataString = 'mid='+mid+'&message='+message+'&facebook='+facebook+'&name='+name+'&bgg_id='+bgg_id+'&thumbnail='+thumbnail;
$.ajax({
type: "POST",
url: "/game-checkin",
data: dataString,
だから私は右に正しく(URLエンコード)することを渡していませんよ?
UPDATE:私はこのことができます願ってい
data: {"mid": mid, "message": message, "facebook": facebook,
"name": name, "bgg_id": bgg_id, "thumbnail": thumbnail}
おかげなので、どのように私は上記の私のフィールドに値をエンコードするのでしょうか?テンプレートコードで投稿を更新しました。 –
ブラウザはすでに送信されたフォームの入力をエンコードします。 –
いいえ、そうではありません。 Firebugによると、それは生の文字列であり、サーバーからそれを印刷すると、「コマンドのゲームに参加する」と切り捨てられます。 –