使用ASP.net MVC&JQuery将HTML标签(代码)作为字符串发布
发布时间:2020-12-16 00:31:08 所属栏目:asp.Net 来源:网络整理
导读:我试图通过一个MVC模型发布一个表单到一个控制器中的保存功能。我也在客户端使用tinymce,这会产生一个基于HTML代码的字符串,例如 p内容文字blah blah … / pgt ;. 问题是我不能发布包含 p某事 / p但令人惊讶的是, p某事/ p这个字符串(在“”之后的空格)没
我试图通过一个MVC模型发布一个表单到一个控制器中的保存功能。我也在客户端使用tinymce,这会产生一个基于HTML代码的字符串,例如< p>内容文字blah blah …< / p> ;. 问题是我不能发布包含< p>某事< / p>但令人惊讶的是, p>某事/ p>这个字符串(在“<”之后的空格)没有问题。但是,我不能在每次发布之前处理这个html代码并使这些空格。必须有一个更好的方法。 那么,如何通过$ .post方法发布包含HTML代码的字符串? (如果你必须知道,这个项目是一个内容管理系统,所以我必须将基于HTML的内容文本保存到一个SQL表中。)我看到通过调试,后期操作甚至没有达到Controller,我认为这个是一个唯一的javascript问题,我是对的吗? 这是我正在使用的代码:
使用Javascript function JqueryFromPost(formId) { var form = $(formId); var action = form.attr("action"); var serializedForm = form.serializeArray(); $.post(action,serializedForm,function (data) { //Getting the data Result here... }); } CS代码 [HttpPost] public JsonResult SaveArticle(ArticleModel model) { JsonResult JResult = new JsonResult(); if (ModelState.IsValid) //I do the saving here ending with "JResult.Data = "Success";" (this could also be Failed. So,its just to explain) return JResult; } 解决方法
ASP.NET具有内置的请求验证功能,可自动帮助防止XSS和HTML注入攻击。如果要明确禁用此验证,您可以使用
[ValidateInput(false)] 属性来装饰您要发布的操作:
[HttpPost] [ValidateInput(false)] public ActionResult SaveArticle(ArticleModel model) { var JResult = new JsonResult(); if (ModelState.IsValid) { ... } return JResult; } 此外,如果您在ASP.NET 4.0上运行此属性以生效,则需要将以下内容添加到您的web.config中: <httpRuntime requestValidationMode="2.0" /> 如果您使用的是ASP.NET MVC 3.0,则只能使用 public class ArticleModel { [AllowHtml] public string SomeProperty { get; set; } public string SomeOtherProperty { get; set; } } 另外在你的javascript功能你可能想要 function JqueryFromPost(formId) { var form = $(formId); $.post(form.action,form.serialize(),function (data) { //Getting the data Result here... }); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 在ASP.NET应用程序中实现多语言的最佳方式
- asp.net-mvc – ASP.NET MVC图像和其他静态内容url
- 从Asp.net中的Pdf读取文本
- 增加ASP.net WebForm性能
- asp.net – 如何创建Generic StateManagedCollection?
- asp.net-mvc-3 – 在IIS 7 / 7.5中注册PATCH HTTP谓词
- ASP.NET Core MVC内置服务的使用
- asp.net-mvc-4 – 如何在Jquery DataTable中获取隐藏字段的
- asp.net-mvc-3 – 如何让User.Identity在控制器外工作
- typescript – 浏览中ts文件的空内容
推荐文章
站长推荐
- asp.net – Global.asax中的事件未触发
- asp.net-mvc – 使旧会话Cookie无效 – ASP.Net标
- asp.net – 什么时候Response.IsClientConnected
- ASP.NET MVC 使用Bootstrap的方法
- 具有确认电子邮件的ASP.NET会员提供商
- ASP.NET C# 连接 Oracle数据库增删改查,事务
- asp.net-mvc-3 – MVC模型范围验证器?
- 如何在ASP.NET网站中解决长时间的Glimpse线路时间
- .Net Core微服务入门全纪录(一)——项目搭建
- asp.net-mvc – ASP.NET MVC如何在生产中禁用调试
热点阅读