javascript - 当参数包含 html 标记时 Ajax 调用失败

标签 javascript jquery html ajax

我有这个 ajax :

 $.ajax({
      url: '/PostComment/AddComment',
      type: 'POST',
      dataType: 'json',
      cache: false,
      data: { "PostId": PostId, "CommentText": CommentText },
      success: function (data){
           alert('Ok');
      }
 });

问题是,当 CommentText 变量包含任何 html 标记时,ajax 调用将失败。我知道这是一个奇怪的问题,但事实就是如此。

最佳答案

尝试将编码值发送到服务器端:

commentText = encodeURIComponent(commentText);

在服务器端,如果你使用的是Java,那么你可以这样做:

String commentStr = URLDecoder.decode(request.getParameter("commentText"), "UTF-8");

关于javascript - 当参数包含 html 标记时 Ajax 调用失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27248409/

相关文章:

JavaScript 切换问题

javascript - 是否可以避免使用 Django 和 Backbone.js 双模板?

javascript - 为什么该值没有出现在我的输入 slider 上?

javascript - 如何在Jquery中的点击事件期间停止滚动

javascript - jquery加载外部文本

javascript - 使用 php 创建测验,将数组数据存储在数据库的字段中

javascript - 触发从 canvas.toDataURL 客户端下载?

javascript - 直接在 jQuery 对象上定义实用函数有什么好处吗?

javascript - 跨域iframe问题

html - CarouFredSel - 使用 div