当前位置: 首页 > 面试题库 >

如何在jQuery中转义和发布请求?

周飞语
2023-03-14
问题内容

我有一个带有&值的输入元素:

<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, životopisy, osudy, Domácí rock

*请注意,数据中的所有变量均已定义,并且值包含$(thatInputElement).attr(’value’)。

我怎样才能&amp;正确地逃脱,以便张贴字段value将包含Biografie, životopisy, osudy, Domácí rock&amp;pop


问题答案:

您可以将data选项设置为对象,然后让jQuery进行编码,如下所示:

$.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(value)

但是在大多数情况下,第一个选择要简单/短得多:)



 类似资料:
  • 问题内容: 在views.py中: 我想通过jQuery将此数据(名称和年龄)发送到“ SomeView”中的此发布函数。这是与加载的模板相同的视图,只是请求类型不同。在get()上加载模板,并在post上调用post()函数。可能吗?我检查了其他问题并获得了此解决方案。它应该正在工作。我究竟做错了什么? 问题答案: 如果传入的POST请求未能通过Csrf检查,则Django返回403响应(禁止)

  • 问题内容: 我正在尝试在Django中使用jQuery / AJAX发布数据,并且遇到了麻烦。当我运行下面的代码并单击“测试”按钮时,整个页面将再次重新加载,这不是我想要的(这就是我使用AJAX的原因)。 我也无法确认AJAX请求正在进入Django视图。 编辑:我对return false和进行了编辑。无法加载新页面,但仍无法在该字段中看到更新的文本。我不确定是否正在发送数据。我在控制台中看到:

  • 问题内容: 因此,根据jQuery Ajax文档 ,它在发送请求时以查询字符串的形式序列化数据,但是设置应允许我在正文中发送实际的JSON。不幸的是,我很难首先确定是否发生这种情况,其次是将对象的外观发送给服务器。我所知道的是服务器未解析我正在发送的内容。 使用http客户端发布对象文字时,它可以工作。但是当将jQuery与结合使用时,它将失败。不幸的是,当我在Safari中分析请求时,它说消息的

  • 我在API中有一些endpoint-<代码>/用户/登录 ,<代码>/产品 。 在Swagger用户界面中,我将和发送到,作为响应,我收到一个字符串。 然后,我可以从响应中复制令牌,并希望将其用作请求中的头值(如果存在的话),并将其用作。 我应该手动创建一个文本输入上的某个地方吗

  • 可能重复:<br>Android,通过HTTP POST(SOAP)发送XML 如何在Android系统中发布SOAP服务请求? 请给我举个例子 谢谢你和我分享知识

  • 问题内容: 我正在尝试在Django中使用jQuery / AJAX发布数据,并且遇到了麻烦。当我运行下面的代码并单击“测试”按钮时,整个页面会再次重新加载,这不是我想要的(这就是我使用AJAX的原因)。 我也无法确认AJAX请求正在进入Django视图。 编辑: 我对return false和进行了编辑。无法加载新页面,但仍无法在该字段中看到更新的文本。我不确定是否正在发送数据。我在控制台中看到