gpt4 book ai didi

jquery - 如果字符串包含 HTML 标签,则无法解析 AJAX Post URL (500)

转载 作者:行者123 更新时间:2023-12-01 04:21:49 25 4
gpt4 key购买 nike

我正在尝试获取 TinyMCE wysiwyg 的内容并将其发布到 Controller 功能以进行数据库插入。此设置将始终显示无法加载资源:服务器响应状态为 500(内部服务器错误),并引用我的/admin/postnewarticle/路由作为 Chrome 错误控制台中的数据:

$.ajax({
url: '/admin/postnewarticle/',
type: 'post',
dataType: 'json',
data: {
content: tinyMCE.get('article-content').getContent(),
title: $('#article-title').val(),
articleType: $('#article-types option:selected').val()
},
success: function (result) {
// success stuff
}
});

当我在 Chrome 中调试时,放置 tinyMCE.get('article-content').getContent()正如 Watch Expression 所示,我在这里得到了所需的值:我在 TinyMCE 文本区域中编写的任何内容,都包含在 <p> 中。标签。如果我将“content”的值替换为一些随机静态字符串值,其中不包含任何 HTML 标记,则 Controller 方法将正确执行。

这是我尝试使用的 Controller 方法:

[HttpPost]
[Authorize(Roles = "Administrators")]
[ValidateInput(false)]
public JsonResult PostNewArticle(string title, HtmlString content, string articleType)
{
// do stuff
}

请注意,这里“内容”的数据类型是 HtmlString...在做了一些研究后,它从字符串更改为最终导致我 here 。但无论是字符串还是 HtmlString,如果内容值包含 HTML 标记,操作仍然不会执行。

感谢任何和所有帮助!

最佳答案

在发送内容之前对其进行网址编码可能会有所帮助

content: encodeURIComponent( tinyMCE.get('article-content').getContent() ),

并将其返回到服务器端的真实字符串。

关于jquery - 如果字符串包含 HTML 标签,则无法解析 AJAX Post URL (500),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9835116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com