如何通过ajax请求发送html内容?
发布时间:2020-12-15 23:12:59 所属栏目:百科 来源:网络整理
导读:我有一个带有textarea(tinymce)的表单用于输入内容.当我执行ajax请求时,我收到错误: A potentially dangerous Request.Form value was detected from the client 然后我尝试了类似的东西 html.encodeURIComponent()或escape()但错误仍然存??在 HTML: form
我有一个带有textarea(tinymce)的表单用于输入内容.当我执行ajax请求时,我收到错误:
然后我尝试了类似的东西 html.encodeURIComponent()或escape()但错误仍然存??在 HTML: <form id="editForm" action="" method="post"> <input type="text" id="title" name="title" /> <textarea id="content" name="content"></textarea> <input type="button" id="submit" onclick="Submit();" /> </form> 脚本(我使用jQuery) function Submit(){ $.ajax({ url: 'ajax.aspx?type=addcontent&' + $('#editForm').serialize() + '&rnd=' + Math.random(),success: function(data) { alert('OK'); } }); } 只要按下提交按钮,就会出现错误.没有发出ajax请求.我已经尝试将ValidateRequest =“false”添加到aspx页面,但问题仍然存在. 任何帮助表示赞赏! 解决方法$.post('/foo',{ htmlContent: '<someHtml/>' },function(result) { alert('ok'); }); 现在错误来自服务器端脚本,它不接受HTML. ASP.NET引擎将自动删除包含HTML的任何请求.有多种方法可以自行承担阻止此行为的风险.其中一个包括将ValidateRequest =“false”添加到aspx @Page头. <%@ Page Language="C#" AutoEventWireup="false" ValidateRequest="false" %> 如果它是ASP.NET MVC应用程序,您可以使用 [HttpPost] [ValidateInput(false)] public ActionResult Foo() { ... } 同样重要的是要注意,如果您运行的是.NET 4.0,则将以下内容添加到您的web.config中: <httpRuntime requestValidationMode="2.0" /> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |