Javascript 如何将div元素作为参数传递给MVC控制器?
如何使用jQuerysJavascript 如何将div元素作为参数传递给MVC控制器?,javascript,jquery,html,asp.net-mvc,Javascript,Jquery,Html,Asp.net Mvc,如何使用jQuerys$.post()函数将Hello World传递给MVC控制器,如public JsonResult GetDiv(string元素) 我在客户端上尝试了encodeURL(),但我一直收到一个内部服务器错误(500)…我基本上是在尝试将HTML代码保存到SQL Server。谢谢。在div的父元素上,调用innerHTML,这将以字符串形式返回HTML,然后您可以发布。您很可能需要在尝试使用HTML的属性上使用如下所示的属性来修饰您试图传递的特定属性: public cl
$.post()
函数将Hello World
传递给MVC控制器,如public JsonResult GetDiv(string元素)
我在客户端上尝试了
encodeURL()
,但我一直收到一个内部服务器错误(500)…我基本上是在尝试将HTML代码保存到SQL Server。谢谢。在div的父元素上,调用innerHTML,这将以字符串形式返回HTML,然后您可以发布。您很可能需要在尝试使用HTML的属性上使用如下所示的属性来修饰您试图传递的特定属性:
public class HtmlContent
{
[AllowHtml]
public string Content { get; set; }
}
然后只需在控制器操作中将绑定到该属性:
public JsonResult GetDiv(HtmlContent element)
{
// Access your element here
var html = element.Content;
// Save to the database
}
这将让.NET知道此字符串应包含HTML内容,否则它可能会将其视为潜在的恶意内容并拒绝(类似于您遇到的500错误)。您能提供更多详细信息吗? 你的控制器在哪里运行? 您向其发布数据的控制器是否有任何规格 要获取jQuery div的HTML代码,请使用
.HTML()
函数-
该功能的工作原理如下:
jQuery.post( url [, data ] [, success ] [, dataType ] )
第二个参数必须是字符串或普通对象。因此,使用html()函数应该可以工作
这是我做的一把小提琴(基本上是jsfiddle.net演示+jquery post演示的副本):如果你得到500。。。所以你路线上的路径不存在。。。我想你的控制器方法不会暴露于called@sonic我在函数上加了一个断点,它只在我不传递html时被调用,但一旦我试图传递一个参数(div),我就会得到err 500var html=element.Content;无法工作,无法识别内容…HtmlContent是否正在使用System.Net.Http?不,这只是一个自定义包装器类的示例。我相信
[allowtml]
属性需要一个属性来修饰(也就是说,它不能通过类似public JsonResult GetDiv([allowtml]string content){…}
的东西内联)。