【发布时间】:2011-06-21 18:45:43
【问题描述】:
我需要 POST 短消息到服务器。有时它们有特殊字符,例如以下示例:
&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>
更新:我意识到 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,
所以我没有正确传递(urlencoded)对吗?
更新:在意识到问题出在 JQuery 之后,我能够通过将数据变量赋值替换为:
data: {"mid": mid, "message": message, "facebook": facebook,
"name": name, "bgg_id": bgg_id, "thumbnail": thumbnail}
【问题讨论】:
标签: jquery django post escaping query-string