2014-12-02 53 views
1

我有这样的ajax:Ajax调用失败时的参数包含HTML标签

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

的问题是,当CommentText变量包含任何HTML标签Ajax调用失败。我知道这是一个奇怪的问题,但这是发生的。

+1

向我们展示'/ PostComment/AddComment'中的内容,以及CommentText中的内容。也许你想要执行数据库操作,并且你的数据不会被转义/清理。 – vaso123 2014-12-02 11:36:16

+0

你得到的错误代码/消息是什么 – 2014-12-02 11:36:49

+0

错误在于ajax没有调用任何函数 – 2014-12-02 11:52:45

回答

2

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

commentText = encodeURIComponent(commentText); 

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

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

这个解决方案是否工作? – ArinCool 2014-12-02 11:48:31

+0

索里,不工作。 – 2014-12-02 11:51:34

+0

你能发布你的完整代码吗? – ArinCool 2014-12-02 12:01:13