微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在jQuery中如何逃避和POST请求?

我有一个输入元素&价值:
<input type="checkBox" value="Biografie,životopisy,osudy,Domácí rock&amp;pop" />

当我尝试通过ajax请求发送它:

$.ajax({
    type: "POST",url: "/admin/kategorie/add/link.json",data: "id="+id+"&value="+value+"&type="+type,error: function(){alert('Chyba! Reloadněte prosím stránku.');}
});

实际发送的帖子数据是:

id: 1
pop:
type: e
value: Biografie,Domácí rock

*请注意,数据中的所有变量都被定义,值包含$(thatInputElement).attr(‘value’).

我怎么能逃避& amp; amp适当地使后场价值将包含Biografie,Domácírock& pop?

解决方法

您可以将数据选项设置为对象,并让jQuery执行编码,如下所示:
$.ajax({
  type: "POST",data: { id: id,value: value,type: type },error: function(){ alert('Chyba! Reloadněte prosím stránku.'); }
});

您可以使用encodeURIComponent()对每个值进行编码,如下所示:

encodeURIComponent(value)

但是在大多数情况下,第一个选项更简单/更简单:)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐