我有一个带有&值的输入元素:
<input type="checkbox" value="Biografie, životopisy, osudy, Domácí rock&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, životopisy, osudy, Domácí rock
*请注意,数据中的所有变量均已定义,并且值包含$(thatInputElement).attr(’value’)。
我怎样才能&正确地逃脱,以便张贴字段value将包含Biografie, životopisy, osudy, Domácí rock&pop?
&
value
Biografie, životopisy, osudy, Domácí rock&pop
您可以将data选项设置为对象,然后让jQuery进行编码,如下所示:
data
$.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.'); } });
您 可以 使用 来 编码每个值encodeURIComponent(),如下所示:
encodeURIComponent()
encodeURIComponent(value)
但是在大多数情况下,第一个选择要简单/短得多:)