将值从 javascript 传递到 mvc 控制器

发布于 2024-10-16 00:46:21 字数 275 浏览 1 评论 0原文

我正在使用tinyMCE(js中的富文本编辑器)。 目前,我有一个这样的函数:

   function GetEditorValue() {
        var val = tinyMCE.get('valueTextArea').getContent()

    }

它返回输入到富文本编辑器中的文本。 现在,有没有办法使用 POST 将此数据传递到我的 mvc 控制器 并在那里访问它? (所有这些都是在 ASP.NET MVC 2 中使用 C# 完成的)

I am using tinyMCE (a rich text editor in js).
Currently, I have a function as such:

   function GetEditorValue() {
        var val = tinyMCE.get('valueTextArea').getContent()

    }

which returns the text that was entered into the rich text editor.
Now, is there a way to pass this data using POST to my mvc controller
and access it there?
(All this is being done in ASP.NET MVC 2 using C#)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

无尽的现实 2024-10-23 00:46:21

您可以使用 AJAX 发送该值。例如 jQuery 提供 .post() 函数:

var val = tinyMCE.get('valueTextArea').getContent();
$.post('<%= Url.Action("foo") %>', { value: val }, function(result) {
    // TODO: handle the success
    alert('the value was successfully sent to the server');
});

以及控制器操作内部:

[HttpPost]
public ActionResult Foo(string value)
{
    // Do something with the value
}

现在显然,因为这是一个 RichText 编辑器,该值可能包含危险字符,ASP.NET 将拒绝它们抛出异常。为了避免这种情况,您可以使用 [ValidateInput(false)] 属性:

[HttpPost]
[ValidateInput(false)]
public ActionResult Foo(string value)
{
    // Do something with the value
}

如果您使用的是 ASP.NET 4.0,您还应该将以下内容添加到您的 web.config 中:

<httpRuntime requestValidationMode="2.0" />

You could send this value using AJAX. For example jQuery provides the .post() function:

var val = tinyMCE.get('valueTextArea').getContent();
$.post('<%= Url.Action("foo") %>', { value: val }, function(result) {
    // TODO: handle the success
    alert('the value was successfully sent to the server');
});

and inside your controller action:

[HttpPost]
public ActionResult Foo(string value)
{
    // Do something with the value
}

Now obviously because this is a RichText editor the value might contain dangerous characters and ASP.NET will reject them by throwing an exception. To avoid this you could decorate your controller action with the [ValidateInput(false)] attribute:

[HttpPost]
[ValidateInput(false)]
public ActionResult Foo(string value)
{
    // Do something with the value
}

and if you are using ASP.NET 4.0 you should also add the following to your web.config:

<httpRuntime requestValidationMode="2.0" />
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文