【发布时间】:2011-01-10 20:10:01
【问题描述】:
我习惯于使用data: $("form#myform").serialize() 使用jQuery 表单插件来发送传递数据。在我目前的情况下创建单独的表单没有意义,因为只有两个字段。因此我创建了以下函数:
function storeNotificationMessage(name) {
var content = $("textarea#" + name).val();
var id = $('#id').val();
content = encodeURI(content); // tried this
content = escape(content); // and that
$.ajax({
async: false,
data: "entry=" + id + "&name=" + name + "&msg=" + msg,
type: 'post',
url: '?url=updateEntry',
success: function(response) {
done();
}
});
}
很遗憾,encodeURI 和 escape 都不能正确处理 ' 或 + 或德语变音符号等特殊字符。
问题:编码文本值的正确方法是什么?
【问题讨论】:
-
IIRC,如果您将
data作为关联数组发布,jQuery 应该负责转义值
标签: javascript jquery ajax escaping